ホームページ >データベース >mysql チュートリアル >エラーなしでMySQLの重複インサートを防ぐにはどうすればよいですか?
マスタリング重複したmysqlインサート:包括的なガイド
概要
MySQLテーブルにデータを追加するときに重複するエントリを防ぐことが重要です。一意の制約により重複キーの挿入が防止されますが、PHPや他のコードでこれから発生するエラーを管理するには、より洗練されたアプローチが必要です。
レバレッジ INSERT IGNORE
INSERT IGNORE
<code class="language-sql">INSERT IGNORE INTO my_table (col1, col2) VALUES ('val1', 'val2');</code>
INSERT ... ON DUPLICATE KEY UPDATE
の採用
より柔軟な方法は
句を実行します。それ以外の場合は、INSERT ... ON DUPLICATE KEY UPDATE
を実行します。 例:UPDATE
INSERT
ここで、値「VAL1」が既に存在する
<code class="language-sql">INSERT INTO my_table (col1, col2) VALUES ('val1', 'val2') ON DUPLICATE KEY UPDATE col2 = 'val2';</code>のみが更新されます。 それ以外の場合は、新しい行が挿入されます。
col1
col2
重要な考慮事項
:
このコマンドは、既存の行を重複したキーで上書きします。 慎重に使用してください!REPLACE
他の潜在的な問題を特定するために、常になしでテストクエリをテストします。
IGNORE
が列を変更しないと効率が低下する可能性があります。
以上がエラーなしでMySQLの重複インサートを防ぐにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。