INSERT ...IGNORE を使用できます レコードが重複しているときにアクションを実行しない場合の構文。
REPLACEINTO を使用できます 古いレコードを同じキーの新しいレコードで上書きする場合の構文。
または、 INSERT ...ONDUPLICATEを使用できます。キーアップデート 重複が発生したときに代わりにレコードの更新を実行する場合は、構文。
編集:いくつかの例を追加すると思いました。
例
tbl
という名前のテーブルがあるとします 2つの列、id
およびvalue
。 id=1とvalue=1の1つのエントリがあります。次のステートメントを実行する場合:
REPLACE INTO tbl VALUES(1,50);
id =1 value=50のレコードがまだ1つあります。ただし、レコード全体が最初に削除され、次に再挿入されたことに注意してください。次に:
INSERT IGNORE INTO tbl VALUES (1,10);
操作は正常に実行されますが、何も挿入されません。あなたはまだid=1とvalue=50を持っています。最後に:
INSERT INTO tbl VALUES (1,200) ON DUPLICATE KEY UPDATE value=200;
これで、id=1およびvalue=200の単一のレコードが作成されました。