PHP“INSERT INTO”无效

时间:2014-11-24 11:52:42

标签: php mysql mysqli get

我正在尝试使用" INSERT INTO" PHP的功能,但由于某些未知原因,它无法正常工作。

以下是代码的主要部分 -

$sql = "INSERT INTO order (t_from, t_to, t_date, t_time, t_payment, t_sn, t_u_email) 
        VALUES ('a', 'b', 'c', 'd', 'e', 'f', 'g')";

这有什么问题?

请帮忙!

谢谢,

2 个答案:

答案 0 :(得分:5)

order是MySQL保留的关键字。

http://dev.mysql.com/doc/mysqld-version-reference/en/mysqld-version-reference-reservedwords-5-0.html

order更改为其他内容,

或在order周围加上反复。

$sql = "INSERT INTO `order` (t_from, t_to, t_date, t_time, t_payment, t_sn, t_u_email) 
        VALUES ('a', 'b', 'c', 'd', 'e', 'f', 'g')";

另一个解决方案是在表名前使用数据库名称。

$sql = "INSERT INTO DB_NAME.order (t_from, t_to, t_date, t_time, t_payment, t_sn, t_u_email) 
            VALUES ('a', 'b', 'c', 'd', 'e', 'f', 'g')";

答案 1 :(得分:0)

问题是您无法为 order 这样的表命名。这是一个保留的MySQL关键字。

在您的情况下,您应该将表重命名为订单。这是很多黄油,因为你的桌子上有一个以上的订单,你已经解决了问题。

$sql = "INSERT INTO orders (t_from, t_to, t_date, t_time, t_payment, t_sn, t_u_email) 
        VALUES ('a', 'b', 'c', 'd', 'e', 'f', 'g')";