如何使用executemany()插入多行但忽略错误的行?

时间:2014-03-06 13:48:01

标签: python mysql python-2.7 insert

我正在使用Python MySQLdb将数据插入到mysql数据库中。

InsertList包含很多行。除少数违反数据库完整性规则外,所有这些都是有效的。 如果我运行下面的代码,该命令将返回错误。

Cursor1.executemany(query,InsertList)

如何强制executemany()插入有效的行但忽略少数错误的行?错误的是由新行中的重复值引起的。我是否必须逐个使用execute()来插入行?

感谢您的帮助。

1 个答案:

答案 0 :(得分:6)

使用SQL命令

INSERT IGNORE INTO

而不是普通的

INSERT INTO

这是reference to the docs。请注意,还有INSERT REPLACE(用新值替换重复项)和INSERT ... ON DUPLICATE KEY UPDATE以获得更多控制权。