Mysql插入值错误

时间:2012-10-01 19:42:38

标签: php mysql

所以我正在使用一个非常古老的网站,客户不会让我将其升级到任何类型的PDO。无论如何,我必须使用mysql查询,它真的开始压抑我。我似乎无法让这个工作:

$array = array('1' => 1, '2' => 2);

$values = "({$array['1']}, 2, 'data3', 4, 5)";

if ($moreData){
    $values = $values.", ({$array['6']}, 7, 'data8', 9, 10)";
}

$this->db->query("INSERT INTO " . DB_PREFIX . "customer_reward ".
                 "('field1','field2','field3','field4','field5') ".
                 "VALUES ".$values);

非常感谢任何帮助。

更新:

这是错误信息:

Error: 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 ''field1','field2','field3','field4','field5') VALUES (1, 2, 'data3' at line 1<br />Error No: 1064<br />INSERT INTO table ('field1','field2','field3','field4','field5') VALUES (1, 2, 'data3', 4, 5)

1 个答案:

答案 0 :(得分:2)

查询中的字段名称不应在单引号内。他们要么没有引号,要么在背后。

当您尝试输入某些整数值时,还需要确保字段类型与数据类型匹配。