Erste Seite Zurück Weiter Letzte Seite Übersicht Grafik
UPDATE
UPDATE Tabelle
- SET Spalte1 = Wert, Spalte2 = Wert, ...
- [FROM <JOIN-Konstrukt>]
- [WHERE ...]
Wert
- nummerische Werte
- Zeichenwerte
- Ausdrücke
- NULL
Notizen:
UPDATE
ändert die Werte in einer oder mehreren Zeilen
UPDATE Tabelle
SET Spalte1 = Wert, Spalte2 = Wert, ...
WHERE ...
Werte: numerische Werte, Zeichenwerte, NULL
... SET Nachname = 'Müller', Preis = 100, Kategorie = NULL
in MS Access auch: TRUE, FALSE
... SET Mitglied = FALSE, Austritt = #31/12/2002#
laut SQL Standard gilt für über JOIN verknüpfte Tabellen die Forderung nach Updatability (sofern prinzipiell möglich). Allerdings gibt hier bei den meisten DBMS div. Einschränkungen, z.B. können nur die Spalten aus einer Kopftabelle geändert werden, oder nur die Spalten aus einer Tabelle pro Update usw.
Eigenschaften:
Datensätze in einer Tabelle werden verändert (Tabellenname nach Schlüsselwort UPDATE)
FROM-Klausel: Ermöglicht Auswahl von Datensätzen anhand von Kriterien, die in der upzudatenden Tabelle als Spalten gar nicht vorhanden sind (z.B.: Preis aller „Haushaltsgeräte“ verändern, wenn der Name der Artikelgruppe nicht in der Tabelle Artikel, sondern nur in der Tabelle „Artikelgruppe“ vorkommt). Durch das Vorhandensein einer FROM-Klausel können in der WHERE Klausel Felder ausgewertet werden, die in der Tabelle selbst gar nicht vorkommen.
Tipp:
Immer eine FROM-Klausel verwenden, auch im trivialen Fall:
UPDATE Tabelle ... FROM Tabelle...
Begründung: Zu Testzwecken kann man formulieren:
UPDATE Tabelle
SET Spalte = Wert, Spalte2 = Wert2,...
--SELECT *
FROM Tabelle
WHERE ...
Das –-SELECT wird im Normalfall als Zeilenendkommentar ignoriert, zu Testzwecken kann ich aber (durch Markieren) ein SELECT-Statement zum Server schicken ohne befürchten zu müssen, dass Datensätze verändert werden .