----exception----
MySQL的#1062雖然沒有在表
(1062, "Duplicate entry '1711076-314274483' for key 'uk_thread_mail'")
沒有這樣的數據,這是我在我的日誌打印的例外。
關鍵是UNIQUE KEY uk_thread_mail (thread_id, mail_id)
日誌,似乎在告訴我,我已經得到了元組值(thread_id單,mail_id)爲(1711076,314274483),但是當我檢查表,我無法找到任何行匹配thread_id = 1711076和mail_id = 314274483。
我真的很想知道爲什麼會發生這種情況。
我的代碼是這樣的:因爲mail_id來自另一個表的主鍵
for r, s in rs:
try:
store.execute("insert into table_x (thread_id, mail_id) values (%s, %s)", (r, s))
except Exception, e:
print e
store.rollback()
store.commit()
行的RS永遠不可能重複的。
你在同時做多個插入嗎? – 2013-05-13 15:34:09
我在想也許他'LOAD DATA INFILE'?並且該組合在文件中發生了兩次 – Stephan 2013-05-13 15:38:21
我在循環中插入了數據,如rs中的r:store.execute(「insert into table_x(x,y)values(%s,%s)」,(r [0 ],r [1])); store.commit();但我不確定交易在哪裏同時提交。 – tonicbupt 2013-05-13 15:42:52