MySQL UPDATE-Abfrage mit Beispiel

โšก Intelligente Zusammenfassung

MySQL Die UPDATE-Abfrage รคndert vorhandene Zeilen in einer Tabelle, indem sie ein oder mehrere Felder mit einer einzigen Anweisung รคndert. Diese Ressource erklรคrt die UPDATE-Syntax, die WHERE-Filterung, zeigt Anwendungsbeispiele anhand der Tabelle โ€žmembersโ€œ und erlรคutert die Sicherheitsvorkehrungen, die unbeabsichtigte Massenaktualisierungen verhindern.

  • ๏ธ Kernaussage: UPDATE `table_name` SET `column_name` = 'new_value' [WHERE condition] รผberschreibt die Werte in jeder Zeile, die dem Filter entspricht.
  • โš ๏ธ Ausgelassen WO: Ohne eine WHERE-Klausel รผberschreibt die UPDATE-Anweisung die Spalte in jeder Zeile der Tabelle.
  • ๐Ÿ”ข Wertformatierung: Zeichenketten und Datumswerte mรผssen in einfache Anfรผhrungszeichen gesetzt werden, numerische Werte nicht, und Datumsangaben folgen dem Format โ€žJJJJ-MM-TTโ€œ.
  • ๐Ÿงฉ Mehrere Spalten: Um mehrere Felder in einer Anweisung zu aktualisieren, trennen Sie die einzelnen Zuweisungen durch Kommas.
  • ๐Ÿ” Verifizierungsschritt: Fรผhren Sie die WHERE-Klausel zuerst als SELECT-Anweisung aus und wiederholen Sie sie anschlieรŸend nach der UPDATE-Anweisung, um die neuen Werte zu bestรคtigen.
  • ๐Ÿ›ก๏ธ Sicherer Update-Modus: MySQL Workbench lehnt alle UPDATE-Anweisungen ab, deren WHERE-Klausel nicht nach einer Schlรผsselspalte filtert.

Was ist die UPDATE-Abfrage?

Das AKTUALISIEREN MySQL Der Befehl dient zum ร„ndern von Zeilen in einer Tabelle. Die UPDATE-Abfrage kann ein einzelnes Feld oder mehrere Felder gleichzeitig รคndern. Sie kann auch zum Aktualisieren einer Tabelle verwendet werden. MySQL Tabelle mit Werten aus einer anderen Tabelle.

Warum die UPDATE-Abfrage verwenden? MySQL?

Daten bleiben selten ewig korrekt. Mitglieder รคndern ihre Telefonnummern, Preise รคndern sich und Bestellungen wechseln vom Status โ€žAusstehendโ€œ zum Status โ€žVersendetโ€œ. Das Lรถschen der alten Zeile und das Einfรผgen einer neuen wรผrde den Primรคrschlรผssel und alle Fremdschlรผsselbeziehungen beschรคdigen. Die UPDATE-Anweisung bearbeitet die Zeile direkt, sodass Identitรคten und Beziehungen erhalten bleiben.

Die UPDATE-Abfrage ist immer dann das richtige Werkzeug, wenn:

  • Ein Wert ist falsch oder veraltet: Einen falsch geschriebenen Namen korrigieren oder eine Kontaktnummer aktualisieren, ohne den Rest des Datensatzes zu verรคndern.
  • Ein Status muss sich weiterentwickeln: Eine Bestellung kann von โ€žausstehendโ€œ auf โ€žversendetโ€œ geรคndert werden, indem eine einzelne Spalte neu geschrieben wird.
  • Mehrere Felder verรคndern sich gleichzeitig: Mit einer einzigen Anweisung kรถnnen ein neuer Name und eine neue Adresse im selben Durchlauf festgelegt werden.
  • Eine Massenkorrektur ist erforderlich: Eine WHERE-Klausel, die auf mehrere Zeilen zutrifft, wendet die gleiche Bearbeitung auf alle Zeilen gleichzeitig an.

Da ein UPDATE ohne WHERE-Klausel jede Zeile neu schreibt, trennt der Filter eine routinemรครŸige Korrektur von einem versehentlichen รœberschreiben.

MySQL Befehlssyntax aktualisieren

Nachdem der Zweck festgelegt ist, folgt als nรคchstes die Syntax. Die Grundform der UPDATE-Abfrage in MySQL wird unten gezeigt.

UPDATE `table_name` SET `column_name` = 'new_value' [WHERE condition];

HIER:

  • UPDATE `table_name` ist der Befehl, der es sagt MySQL Die Daten in einer Tabelle รคndern.
  • SET `column_name` = 'new_value' Gibt die Namen und Werte der Felder an, die von der UPDATE-Abfrage betroffen sein sollen. Beim Festlegen der Werte mรผssen Zeichenketten in einfache Anfรผhrungszeichen gesetzt werden. Numerische Werte benรถtigen keine Anfรผhrungszeichen. Datumswerte mรผssen in einfache Anfรผhrungszeichen und im Format โ€žJJJJ-MM-TTโ€œ angegeben werden.
  • [WHERE-Bedingung] ist optional und kann verwendet werden, um einen Filter anzuwenden, der die Anzahl der von der UPDATE-Abfrage betroffenen Zeilen einschrรคnkt. Die vollstรคndige Optionsliste finden Sie in der MySQL UPDATE Statement Handbuch.

Schauen wir uns nun ein praktisches Beispiel an, das Daten in der Mitgliedertabelle aktualisiert.

Aktualisieren Sie in MySQL Beispiel

Angenommen, bei den Mitgliedern mit den Mitgliedsnummern 1 und 2 sollen die folgenden Aktualisierungen an ihren Datensรคtzen vorgenommen werden.

Mitgliedsnummer Aktualisierungen erforderlich
1 ร„ndern Sie die Kontaktnummer von 999 auf 0759 253 532
2 ร„ndern Sie den Namen in Janet Smith Jones und aktualisieren Sie die Adresse auf Melrose 123.

Aktualisieren einer einzelnen Spalte

Wir beginnen mit Mitgliedsnummer 1. Bevor wir ร„nderungen vornehmen, rufen wir diesen Datensatz ab.

SELECT * FROM `members` WHERE `membership_number` = 1;

Die Ausfรผhrung des obigen Skripts fรผhrt zu den folgenden Ergebnissen.

Mitgliedsnummer ganze Namen Geschlecht Geburtsdatum physikalische Adresse Postanschrift Kontaktnummer E-Mail
1 Janet Jones Weiblich 21-07-1980 Erstes StraรŸengrundstรผck Nr. 4 Private Tasche 999 janetjones@yagoo.cm

Lassen Sie uns nun die Kontaktnummer mit dem unten gezeigten Skript aktualisieren.

UPDATE `members` SET `contact_number` = '0759 253 532' WHERE `membership_number` = 1;

Durch Ausfรผhren des obigen Skripts wird die Kontaktnummer fรผr Mitgliedsnummer 1 von 999 auf 0759 253 532 geรคndert. Ein erneutes Ausfรผhren der SELECT-Anweisung bestรคtigt den neuen Wert.

Mitgliedsnummer ganze Namen Geschlecht Geburtsdatum physikalische Adresse Postanschrift Kontaktnummer E-Mail
1 Janet Jones Weiblich 21-07-1980 Erstes StraรŸengrundstรผck Nr. 4 Private Tasche 0759 253 532 janetjones@yagoo.cm

Mehrere Spalten aktualisieren

Bei Mitgliedsnummer 2 mรผssen zwei Felder gleichzeitig geรคndert werden. Dies ist der Datensatz vor der Aktualisierung.

Mitgliedsnummer ganze Namen Geschlecht Geburtsdatum physikalische Adresse Postanschrift Kontaktnummer E-Mail
2 Smith Jones Weiblich 23-06-1980 Park Street NULL NULL jj@fstreet.com

Das folgende Skript aktualisiert beide Spalten mit einer einzigen Anweisung. Beachten Sie das Komma, das die beiden Zuweisungen trennt.

UPDATE `members` SET `full_names` = 'Janet Smith Jones', `physical_address` = 'Melrose 123' WHERE `membership_number` = 2;

Durch Ausfรผhren des obigen Skripts werden die vollstรคndigen Namen fรผr Mitgliedsnummer 2 in Janet Smith Jones und die physische Adresse in Melrose 123 aktualisiert.

Mitgliedsnummer ganze Namen Geschlecht Geburtsdatum physikalische Adresse Postanschrift Kontaktnummer E-Mail
2 Janet Smith Jones Weiblich 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com

๐Ÿ’ก Tipp: Die vollstรคndigeWHERE-KlauselDie Angabe โ€žโ€œ begrenzt die Anzahl der von der UPDATE-Abfrage betroffenen Zeilen. Wird sie weggelassen, wird jede Zeile in der Tabelle รผberschrieben.

Hรคufig gestellte Fragen

MySQL Die Funktion gibt die Anzahl der รผbereinstimmenden und der geรคnderten Zeilen zurรผck. โ€žรœbereinstimmende Zeilenโ€œ zeigt an, wie viele Zeilen die WHERE-Klausel ausgewรคhlt hat, wรคhrend โ€žGeรคnderte Zeilenโ€œ Zeilen ausschlieรŸt, deren neuer Wert mit dem alten identisch ist.

Ja. Kombinieren Sie UPDATE mit einem JOIN und verweisen Sie in der SET-Klausel auf die zweite Tabelle. Die Join-Bedingung legt fest, welche Quellzeile den neuen Wert fรผr jede Zielzeile liefert.

SchlieรŸen Sie die ร„nderung in eine Transaktion ein. START TRANSACTION gefolgt von ROLLBACK stellt die alten Werte wieder her. Sobald die ร„nderung festgeschrieben ist, kรถnnen die vorherigen Daten nur noch durch eine Sicherung wiederhergestellt werden. Testen Sie daher die WHERE-Klausel zuerst mit SELECT.

Ja. KI-Assistenten wandeln eine beschriebene ร„nderung in UPDATE-Syntax um und schlagen die WHERE-Klausel vor. Geben Sie dem Modell Ihre Tabellenstruktur und รผberprรผfen Sie den Filter mit einer SELECT-Anweisung, bevor Sie die generierte Abfrage ausfรผhren.

Da ein KI-Modell Ihre Live-Zeilen nicht sehen kann, kann eine leicht fehlerhafte WHERE-Klausel Tausende von Datensรคtzen unbemerkt รผberschreiben. Revรœberprรผfen Sie jede generierte Anweisung, fรผhren Sie sie auf einer Testkopie aus und erstellen Sie eine aktuelle Sicherungskopie.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: