將行插入到具有唯一鍵的表中可能會帶來挑戰您需要避免重複輸入。處理重複項的標準語法是使用 INSERT ... ON DUPLICATE KEY UPDATE ...,這會使用提供的值更新現有行。但是,如果您不想執行任何更新而只是忽略重複插入怎麼辦?
幸運的是,有針對這種情況的解決方案。您可以使用以下語法來代替使用 UPDATE 子句:
INSERT ... ON DUPLICATE KEY UPDATE>
透過將主鍵指派回其自身,當遇到重複鍵時,此語句基本上不執行任何操作。該行將被跳過,沒有任何錯誤或更新操作。
如果您不關心潛在錯誤,則適合的另一個選項是使用INSERT IGNORE:
INSERT IGNORE INTO <table_name> (...) VALUES (...)
此語句將嘗試插入一行,忽略由於重複鍵或其他因素可能出現的任何錯誤。但是,需要注意的是,使用 INSERT IGNORE 可能會有一定的限制,例如自動增量欄位耗盡和可能的外鍵錯誤。
以上是MySQL插入資料時如何忽略重複鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!