它不断收到此SQL错误,但我非常确定查询中没有错误。我一直盯着它看太久了。还有其他可能导致这种情况的事吗?
INSERT INTO game_data (clue, image, answer, wrong, right) VALUES ('asdf', 'asdf', 'asdf', 'assdf', 'asdf')
Invalid Query: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'right) VALUES ('asdf', 'asdf', 'asdf', 'assdf', 'asdf')' at line 1
我已经使用这个确切的代码运行了其他查询,只是交换变量,并且它可以工作。
并且为了更好的衡量,有一个PHP生成这个:
$sql = "INSERT INTO game_data (clue, image, answer, wrong, right) VALUES
('" . $clue . "', '" . $image . "', '" . $answer . "', '" . $wrong . "', '" . $right . "')";
答案 0 :(得分:11)
正确是reserved keyword in MYSQL。你需要使用这样的反引号来逃避它:
INSERT INTO game_data (`clue`, `image`, `answer`, `wrong`, `right`) VALUES
注意:请尽量避免将列命名为保留关键字名称。
答案 1 :(得分:0)
名称“right”是MySQL保留的关键字。我不知道你怎么能创建'正确'专栏。