mysql_query的语法是否正确?

时间:2012-10-23 06:13:19

标签: php mysql insert syntax-error

我收到以下PHP语句的语法错误:

mysql_query("INSERT INTO table1 (to, from, msg, field, date)  
VALUES ('TEST_TO', 'TEST_FROM', 'TEST_MSG', 'TEST_FIELD', 'TEST_DATE')");

返回的错误是:

You have an error in your SQL syntax.

代码有什么问题?

2 个答案:

答案 0 :(得分:6)

tofromreserved words。你需要引用它们(带反引号,因为它们是字段名称)。 (值得养成总是引用字段名称而不是试图记住哪些是保留的习惯。)

答案 1 :(得分:3)

您在列名中保留了单词,例如 - from,to。使用反引号逃脱。

  mysql_query("INSERT INTO table1 (`to`, `from`, `msg`, `field`, `date`)  
  VALUES ('TEST_TO', 'TEST_FROM', 'TEST_MSG', 'TEST_FIELD', 'TEST_DATE')");

注意:不推荐使用mysql_query。使用mysqli_query或PDO函数。