這時候 MySQL 可以在 SQL 的最後加上 ON DUPLICATE KEY
INSERT INTO [table_name] ( [col_name]... ) VALUES ( [expr | value]... ) ON DUPLICATE KEY UPDATE col_name = [expr | value]
當資料表中已經有重複的資料時 MySQL 會執行 UPDATE 的動作而不是 INSERT。
另外一個與它相反的是 IGNORE
INSERT IGNORE INTO [table_name] ( [col_name]... ) VALUES ( [expr | value]... )
存在重複的資料時 MySQL 會自動略過 INSERT 的動作,反之則加進資料表中。
資料來源:MySQL insert時判斷資料表內是否有重複的主鍵
沒有留言:
張貼留言