3

カラムにはユニーク設定をしているので、INSERTはできませんが、トランザクションでINSERTし、Duplicateエラーのみ無視して、次のINSERTの処理を行う方法はありますでしょうか?

MySQL
バージョン : 5.1.73
ストレージエンジン : InnoDB

よろしくお願いします。

1 Answers1

4

二つの対応方法があると思います。普通のINSERTの代わりに

  1. INSERT IGNORE ...を使ったら、duplicateエラーが無視されます。
  2. INSERT ... ON DUPLICATE KEY UPDATEを使ったら、duplicateではない場合レコードがinsertされます。duplicateである場合レコードがupdateされます。
Robby Cornelissen
  • 1,388
  • 8
  • 21
  • 1
    insert ignoreでうまくいきました。ありがとうございました。 –  Apr 10 '15 at 04:32