我写了这段代码:
mysql_query("INSERT INTO test (user_id, word_id, right) VALUES ('6', '23', '5' )") or die(mysql_error());
但是出现错误信息提示:
您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,以便在第1行“右边”VALUES('6','23','5')附近使用正确的语法
我做错了什么?
答案 0 :(得分:4)
right
是reserved word,就这样逃避:
INSERT INTO test (user_id, word_id, `right`) VALUES ('6', '23', '5' )
请注意: 1
不鼓励使用此扩展名(mysql_query)。取而代之的是MySQLi或PDO_MySQL 应该使用扩展名。另请参阅MySQL: choosing an API指南和 相关FAQ以获取更多信息。替代此功能 包括:
mysqli_query() PDO::query()
答案 1 :(得分:2)
right
是保留关键字9.3. Reserved Words
当我们使用保留关键字时我们需要逃避它们尝试
mysql_query("INSERT INTO test (user_id, word_id, `right`) VALUES ('6', '23', '5' )") or die(mysql_error());
答案 2 :(得分:0)
试试这个::: RIGHT
是已知关键字,尝试反击
INSERT INTO test (`user_id`, `word_id`, `right`) VALUES ('6', '23', '5' )
答案 3 :(得分:0)
INSERT INTO `test` (`user_id`, `word_id`, `right`) VALUES ('6', '23', '5' )