MySQL での REPLACE と INSERT ... ON DUPLICATE KEY UPDATE の実際的な違い
キーを挿入または更新するタスクに直面したときキーに基づくレコードの場合、MySQL には REPLACE と INSERT ... ON DUPLICATE KEY という 2 つの異なるコマンドが用意されています。 アップデート。どちらも望ましい結果を達成しますが、実質的には顕著な違いがあります。
概要
REPLACE 関数では、最初に指定されたキーを持つ既存のレコードを削除し、次に新しいレコードを挿入します。 。逆に、INSERT ... ON DUPLICATE KEY UPDATE は新しいレコードを挿入しようとしますが、同じキーを持つレコードがすでに存在する場合は、指定された値に基づいて既存のレコードのフィールドを更新します。
Key考慮事項
推奨
ほとんどの場合、REPLACE よりも INSERT ... ON DUPLICATE KEY UPDATE が優先されます。データの整合性が維持され、自動インクリメント値が保持され、ほとんどのシナリオでより効率的になります。 REPLACE は、外部キー制約が問題ではなく、自動インクリメント値をインクリメントすることが望ましい特定の状況でのみ使用してください。
以上がMySQL での REPLACE と INSERT ... ON DUPLICATE KEY UPDATE: どちらを使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。