一意のフィールドを持つ MySQL データベースにデータを挿入する場合、多くの場合、重複を処理することが望ましいです。エラーが発生することなく正常にエントリが実行されます。この記事では、挿入中の重複エントリ エラーを無視するためのさまざまな方法について説明します。
INSERT...IGNORE 構文では、次の挿入が可能です。潜在的な重複エラーを無視して、レコードをテーブルに追加します。同じ一意のフィールド値を持つエントリが存在する場合、挿入はエラーを引き起こさずに単純にスキップされます。
REPLACE INTO 構文は次のように似ています。 INSERT...IGNORE ですが、同じ一意のフィールド値を持つ既存のレコードが上書きされます。これは、古いレコードを新しいレコードで置き換える場合に便利です。
INSERT... ON DUPLICATE KEY UPDATE 構文を使用すると、重複エントリが見つかったときに実行するアクションを指定できます。既存のレコードを新しい値で更新するか、特定の列に新しい値を設定するか、その他の操作を実行するかを選択できます。
id | value |
---|---|
1 | 1 |
<code class="sql">REPLACE INTO tbl VALUES (1, 50);</code>
<code class="sql">INSERT IGNORE INTO tbl VALUES (1, 10);</code>
<code class="sql">INSERT INTO tbl VALUES (1, 200) ON DUPLICATE KEY UPDATE value=200;</code>
以上がMySQL 挿入時の重複エントリ エラーを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。