ホームページ > データベース > mysql チュートリアル > 一意のキーがすでに存在する場合に MySQL にエラーなしで行を挿入するにはどうすればよいですか?

一意のキーがすでに存在する場合に MySQL にエラーなしで行を挿入するにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-04 01:23:40
オリジナル
463 人が閲覧しました

How to Insert Rows Without Errors in MySQL When a Unique Key Already Exists?

INSERT ... ON DUPLICATE KEY: NULL 操作

質問:

2 つの列に一意のキーを持つテーブル。キーが既に存在する場合、エラーを発生させずに行を挿入するにはどうすればよいですか?存在しますか?

答え:

MySQL は、挿入中に重複キーの競合を処理するためのいくつかのオプションを提供します。

INSERT ... ON DUPLICATE KEY UPDATE>

シンプルだが効果的な方法は、INSERT ... ON を使用することです。重複キーの更新>。この構文は、重複キーが見つかった場合に id カラムを既存の値に更新するように MySQL に指示します。ただし、ID が現在の値に設定されているため、実際には更新はトリガーされません。

INSERT IGNORE

エラーや問題を気にしない場合は、 autoincrement フィールドが枯渇した場合は、INSERT IGNORE が簡単なオプションです。この構文は、変換エラー、外部キー エラー、自動インクリメント フィールドの枯渇など、重複キーの競合によって生じるエラーを無視します。

利点:

  • 重複キーエラーを防止します
  • INSERT ... ON DUPLICATE KEY によりデータの整合性を維持しますUPDATE>
  • INSERT IGNORE による意図しない挿入を回避します

考慮事項:

  • INSERT IGNORE 行が存在する場合、データ損失が発生する可能性があります。一意のキー フィールド以外のデータを使用する場合は、挿入されました。
  • INSERT ... ON DUPLICATE KEY UPDATE> は、重複行に対して追加の更新を実行する必要がある場合には適さない可能性があります。

以上が一意のキーがすでに存在する場合に MySQL にエラーなしで行を挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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