无法在PHP

时间:2015-05-17 11:47:40

标签: php mysql

我是php的新用户。我正在尝试使用以下查询插入表:

$insert = "INSERT INTO forget (key,user_name) values('Abc','Xyz')";
mysql_query($insert)
echo mysql_error();

输出:

  

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第1行的'key,user_name)值('abc','xyz')附近使用正确的语法

2 个答案:

答案 0 :(得分:1)

MySQL有一些保留字会导致使用它们的查询失败。在这种情况下,它是key

您可以更改列名称(也称为"键"这就是失败的原因)或者您可以使用反引号来转义术语,如下所示:

$insert = "INSERT INTO forget (`key`,user_name) values('Abc','Xyz')"; 

答案 1 :(得分:0)

以下是mysql保留的单词列表,并且不能在查询中用作表或字段名称,除非使用后退标记进行转义。您可以将它们用作字段名称,但在查询时,必须使用" `"。

在您的情况下,key是保留字。所以你必须使用后退滴答来逃避它。

以下是mysql保留字的列表:https://dev.mysql.com/doc/refman/5.5/en/reserved-words.html