Überschreibt MySQL bei Aktualisierungen unveränderte Spalten?
Beim Aktualisieren einer MySQL-Tabelle, wie das bereitgestellte Beispiel zeigt:
user_id | user_name |
---|---|
1 | John |
2 | Joseph |
3 | Juan |
Wenn die folgende Abfrage ausgeführt wird:
<code class="sql">UPDATE `user` SET user_name = 'John' WHERE user_id = 1</code>
Wird MySQL die Spalte „user_name“ ändern, obwohl die beabsichtigte Änderung mit dem vorhandenen Wert identisch ist?
MySQLs Ansatz dazu Unveränderte Spaltenwerte
Laut der MySQL-Dokumentation für die UPDATE-Anweisung:
„Wenn Sie eine Spalte auf den Wert setzen, den sie aktuell hat, bemerkt MySQL dies und aktualisiert sie nicht.“ „
In unserem Fall erkennt MySQL, dass der vorgesehene „user_name“-Wert für user_id 1 mit dem aktuellen Wert identisch ist. Daher wird MySQL keine Änderungen an der Datenbank vornehmen.
Somit wird die Abfrage ausgeführt, ohne die Tabellendaten zu ändern, da MySQL erkennt, dass für die angegebene Spalte keine tatsächlichen Änderungen erforderlich sind.
Das obige ist der detaillierte Inhalt vonAktualisiert MySQL bei Updates unveränderte Spalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!