ホームページ >データベース >mysql チュートリアル >MySQL は更新時に既存の値を同じ値で上書きしますか?

MySQL は更新時に既存の値を同じ値で上書きしますか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-02 22:41:30515ブラウズ

Does MySQL Overwrite Existing Values with the Same Value on Update?

MySQL 更新時の値の上書き

MySQL テーブルを更新するとき、データベースが既存の値を同じ値で上書きするかどうか疑問に思うことがよくあります。次のテーブルを考えてみましょう:

<code class="sql">user_id | user_name
1         John
2         Joseph
3         Juan</code>

次のクエリを実行すると:

<code class="sql">UPDATE `user` SET user_name = 'John' WHERE user_id = 1</code>

MySQL は 'John' の既存の値を同じ値で上書きしますか、それとも上書きしますか?値が変更されないため、更新を無視しますか?

回答

UPDATE ステートメントに関する MySQL ドキュメントによると、

カラムに値を設定すると、現在、MySQL はこれを認識し、更新しません。

この場合、user_id 1 の user_name カラムはすでに「John」に設定されています。したがって、更新クエリを実行すると、MySQL は新しい値が現在の値と同一であることを認識し、データベースに変更を書き込みしません

以上がMySQL は更新時に既存の値を同じ値で上書きしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。