ホームページ > データベース > mysql チュートリアル > MySQL INSERT ステートメントで重複キーを処理するにはどうすればよいですか?

MySQL INSERT ステートメントで重複キーを処理するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-26 22:45:11
オリジナル
248 人が閲覧しました

How to Handle Duplicate Keys in MySQL INSERT Statements?

MySQL の重複キーを無視または更新

このフィールドの「タグ」など、特定のフィールドに UNIQUE 制約を適用するテーブルにデータを挿入しようとすると、この場合、重複した値が発生するとエラーが発生する可能性があります。この質問では、重複の無視に特に焦点を当てて、このような状況に対処する方法を検討します。

提供された最初の例は、重複タグを無視することを目的として、「table_tags」テーブルに複数の値を挿入しようとする試みを示しています。ただし、「INSERT INTO ... ON DUPLICATE KEY IGNORE」の使用は、重複キー違反だけでなくすべてのエラーを無視する可能性があるため、推奨されません。

代わりに、「INSERT」を使用することをお勧めします。 INTO ... 重複キー更新時 tag=tag;"構文。このアプローチを使用すると、重複キー違反が発生した場合に何が起こるかを明示的に指定できます。この場合は、既存のレコードを同じ値で更新するだけです。

この構文を使用すると、重複キーが無視されなくなりますが、むしろ、既存の値が維持されます。重複キーは事実上無視されますが、クエリではエラーが発生せず、予想どおり「クエリ OK、影響を受ける行は 0 行」となります。

以上がMySQL INSERT ステートメントで重複キーを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート