UPDATE-Anweisung

Verwenden Sie die UPDATE-Anweisung, um Datensätze in einer Datenbanktabelle zu ändern. Das Format der UPDATE-Anweisung ist:

Kopieren
UPDATE tabellenname SET spaltenname = ausdr, ... [ WHERE { bedingungen } ]

spaltenname ist der Name einer Spalte, deren Wert zu ändern ist. Mehrere Spalten können in einer Anweisung geändert werden.

ausdr ist der neue Wert für die Spalte.

Gewöhnlich sind die Ausdrücke konstante Werte für die Spalten (sie können aber auch Unterabfragen sein). Sie müssen Zeichenfolgenwerte in einfachen Anführungszeichen (') angeben. Um ein einfaches Anführungszeichen in einer Zeichenfolge, die durch einfache Anführungszeichen eingeschlossen ist, aufzunehmen, verwenden Sie zwei einfache Anführungszeichen (z. B. 'ist''s').

Unterabfragen müssen in Klammern angegeben werden.

Die WHERE-Klausel ist jede gültige Klausel. Sie bestimmt, welche Datensätze aktualisiert werden.

Beispiel

UPDATE-Anweisung für die Tabelle „ang“.

Kopieren
UPDATE ang SET gehalt=32000, steuerfrei=1 WHERE angnr = 'A10001'

Die UPDATE-Anweisung ändert jeden Datensatz, der die Bedingungen der WHERE-Klausel erfüllt. In diesem Fall werden Gehalt und Steuerfreiheit für alle Angestellten mit der Angestelltennummer A10001 geändert. Da in der Angestellten-Tabelle Angestelltennummern eindeutig sind, wird nur ein Datensatz aktualisiert.

Beispiel

UPDATE-Anweisung für die Tabelle „ang“ mit einer Unterabfrage.

Kopieren
UPDATE ang SET gehalt = (SELECT avg(gehalt) from ang ) WHERE angnr = 'A10001'

In diesem Fall wird das Gehalt für jeden Angestellten mit der Angestelltennummer A10001 auf den Gehaltsmittelwert des Unternehmens geändert.

Wichtig  

In Containerfeldern können Sie UPDATE mit nur Text, wenn Sie keine parametrisierte Anweisung vorbereiten und die Daten aus Ihrer Anwendung streamen. Um Binärdaten zu verwenden, können Sie einfach den Dateinamen zuordnen, indem Sie ihn in einfachen Anführungszeichen angeben, oder Sie verwenden die Funktion PutAs(). Wenn Sie den Dateinamen angeben, wird der Dateityp aus der Dateierweiterung abgeleitet:

Kopieren
UPDATE tabellenname SET (containername) = ? AS 'dateiname.dateierweiterung'

Nicht unterstützte Dateitypen werden als Typ FILE eingefügt.

Wenn Sie die Funktion PutAs() verwenden, geben Sie den Typ an: PutAs(col, 'typ'), wobei der Typwert ein Typ ist, der unter Abrufen des Inhalts eines Containerfelds: CAST()-Funktion und GetAs()-Funktion.