MySQL INSERT查询

时间:2010-07-10 21:49:09

标签: php mysql mysql-error-1064

我的MySQL查询有问题:

include '../inc/mysql_config.php';
$sql="INSERT INTO ordrar 
        (id, order, namn, adress, postnummer, postort, email, status)
      VALUES
        (NULL, '$order','$namn','$adress','$postnummer', '$postort', '$email', '$email', '$status')";
 mysql_query($sql);
 if (!mysql_query($sql)) { die('Error: ' . mysql_error()); }

输出:

  

错误:您的SQL中有错误   句法;检查手册   对应于您的MySQL服务器   用于正确语法的版本   靠近'order,namn,adress,postnummer,   postort,email,status)VALUES'at   第1行

感谢。

解决:

    include '../inc/mysql_config.php';
    $sql="INSERT INTO ordrar (id, substans, namn, adress, postnummer, postort, email, status)
    VALUES
    (NULL, '$substans','$namn','$adress','$postnummer', '$postort', '$email', '$status')";
    mysql_query($sql);
    if (!mysql_query($sql))
      {
      die('Error: ' . mysql_error());
      }

谢谢大家!

3 个答案:

答案 0 :(得分:7)

'order'是一个保留字。你需要将它包装在反引号中,但如果你重命名该列,你会有更少的麻烦。

答案 1 :(得分:5)

我计算了8个列名和9个值。 '$ email'是否意味着重复?

“ORDER”可能是一个关键字 - 来自ORDER BY SQL。也许快速的列名更改可以解决它。试试吧,看看。

答案 2 :(得分:4)

8行,9个查询参数 - 您在INSERT语句的VALUES部分中有一个重复的$ email变量。