MySQL では、テーブルを更新するときに、カラムに指定した新しい値が現在の値と同じです。このような場合、自然な疑問が生じます: MySQL は既存の値を上書きするのでしょうか、それとも更新を完全に無視しますか?
UPDATE ステートメントに関する MySQL ドキュメントに答えが記載されています:
カラムを次のように設定した場合現在の値ですが、MySQL はこれに気づき、更新しません。
これは、更新クエリを実行すると、 like:
UPDATE `user` SET user_name = 'John' WHERE user_id = 1
カラム値がすでに 'John' である場合、MySQL は新しい値が既存の値と同一であると認識します。 1 つであり、更新しようとしません。これは、データベースへの不要な書き込みを防ぐ最適化機能です。
したがって、この例では、MySQL は既存の値を上書きせず、user_id = 1 のユーザーの 'user_name' カラムを変更しないままにします。この動作により、データベースに冗長な書き込み操作による不必要な負担がかからないようになります。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3