Mysql插入查询上的未知列错误

时间:2012-02-20 20:56:22

标签: mysql insert

When doing a simple insert into an MYSQL database, I get this error

“字段列表”中的“未知列'Af452OtQa'”

'Af452OtQa'是我试图插入到'serialnum'列中的值所有变量都是从上一页的POST值设置的,除了这个字段之外都是urlencoded,我创建的值是因此,知道它不会有任何字母数字。

      $insertSQL = sprintf("INSERT INTO Presentations ('serialnum', 'docurl', 'tracker', 'recipient', 'last_accessed') VALUES (%s, %s, %s, %s, %s,)",
  $sn,$doc,$trackr,$recip,$lastacc);

1 个答案:

答案 0 :(得分:2)

SQL语句中是否没有额外的逗号?

您需要在values子句中使用引号,而不是insert

的列名部分
$insertSQL = sprintf("INSERT INTO Presentations "+
                               "(serialnum, docurl, tracker, recipient, last_accessed) "+
                               "VALUES ('%s', '%s', '%s', '%s', '%s')",
                                $sn,$doc,$trackr,$recip,$lastacc);

另外:您是否考虑过使用绑定变量,因为您的代码容易受到SQL注入攻击。