2014-03-06 102 views
1

我正在使用Python MySQLdb將數據插入到mysql數據庫中。如何使用executemany()插入多行但忽略錯誤的行?

InsertList包含許多行。除少數違反數據庫完整性規則外,其他都是有效的。 如果我運行下面的代碼,該命令返回一個錯誤。

Cursor1.executemany(查詢,InsertList)

如何強制executemany()要插入的有效行,但忽略它是錯誤的有幾人?錯誤的是由新行中的重複值引起的。我必須逐個使用execute()來插入行嗎?

謝謝你的幫助。

回答

6

使用SQL命令

INSERT IGNORE INTO 

而不是純

INSERT INTO 

這裏是一個reference to the docs。請注意,還有INSERT REPLACE(用新值替換重複項)和INSERT ... ON DUPLICATE KEY UPDATE以獲得更多控制權。

+0

感謝您的回答。你救了我! – user781486

+0

不工作 – shenyan