为什么此插入查询失败?

时间:2013-09-18 09:50:31

标签: php sql

mysql_query("
INSERT INTO `LMS`.`Presentation` 
    ('Pre_Name' ,'Path' ,'PLec_ID' ,'pdatein' ,'pdesc','PSems_ID') 
values 
    ('$fname','$newname','$com',NOW(),'$filedesc','$semes')"
) or die("failed");

亲爱的, 我有一个名为演示文稿的表格,我打算输入值,有人提到$ com和$ sems是组合框值,但查询显示失败,任何人都可以帮忙, 提前谢谢

3 个答案:

答案 0 :(得分:4)

当你应该使用反引号时,你正在使用引号:

mysql_query("INSERT INTO `LMS`.`Presentation` (`Pre_Name`, `Path`, ...

或者根本不使用任何特殊字符。如果你做一些愚蠢的事情就像使用保留字作为列名一样,反引号只是必要我希望人们会选择他们的列名更具可读性。

换句话说,datein以及select是列的愚蠢名称,您应该使用expiry_dateisInLocation和{{1} }。

答案 1 :(得分:1)

or die("failed")更改为or die(mysql_error()),您就会知道原因。

不过,请考虑从 mysql 功能更改为 mysqli 功能。并使用参数化查询。否则,您将对SQL injection开放。

答案 2 :(得分:0)

mysql_query("

INSERT INTO table
(column1, column2, column3, column4 .... columnX)
VALUES(column1Data,column2Data, column3Data, column4Data ... columnXdata)

") or die(mysql_error());
  • >在这个例子中漫游,如果没有表的别名,则无法使用别名。
  • 一切都隐藏在细节上......