忽略主键重复

时间:2012-01-11 10:06:00

标签: php mysql primary-key

我有一个近5000个对象的数组,我正在进入MySQL数据库。

数组有一个索引'crn',MySQL表中对应的列是主键。

如果检测到重复的主键而不是停止执行脚本,有什么办法可以告诉mysql跳过一个条目?

我可以在插入每一行之前检查表格,但由于我只期望在5000个左右的对象中有1个或2个重复,所以它似乎会变得非常昂贵。

2 个答案:

答案 0 :(得分:6)

使用INSERT IGNORE代替INSERT

答案 1 :(得分:1)

正如@KingCrunch所述,INSERT IGNORE可以为您做到这一点。

如果您需要了解重复项,可能需要考虑INSERT ... ON DUPLICATE KEY UPDATE

请参阅http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html