为什么这个SQL语句不起作用

时间:2013-06-12 14:47:53

标签: php html mysql sql syntax

我正在尝试通过php脚本将4个值插入到mysql数据库中,但是出现语法错误。

这是我的代码行。

$insert = "INSERT INTO decks (id, card_id, box_num, order) VALUES
 ('$id','$card_id','$box_num','$order')"; 

mysqli_query($db, $insert) or die("SQL Error 1: " . mysqli_error($db));
  

SQL错误1:SQL语法中有错误;检查与您的MySQL服务器版本对应的手册,以便在第1行附近使用正确的语法`VALUES('2','baby','1','1')

有什么想法吗?

非常感谢。

3 个答案:

答案 0 :(得分:6)

您必须在订单周围使用反引号:

`order`

或者将其更改为其他内容。

答案 1 :(得分:4)

单词order是关键字。你必须把它包含在反引号中:

 INSERT INTO decks (id, card_id, box_num, `order`) ...

答案 2 :(得分:1)

ORDER是SQL中的保留字,使用反引号。