Sie können die Anweisung UPDATE gefolgt vom Namen der Tabelle oder der Ansicht verwenden, um einzelne Zeilen, Zeilengruppen oder alle Zeilen in einer Tabelle zu ändern. Wie bei allen Datenänderungsanweisungen können Sie die Daten nur in jeweils einer Tabelle oder Ansicht ändern.
Die UPDATE-Anweisung gibt die Zeilen an, die Sie verändern wollen sowie die neuen Daten, die darin eingefügt werden. Für die neuen Daten können Sie eine Konstante oder einen Ausdruck angeben, oder Daten aus anderen Tabellen beziehen.
Wenn eine UPDATE-Anweisung einer Integritätsregel zuwiderhandelt, wird die Aktualisierung nicht durchgeführt, und eine Fehlermeldung wird ausgegeben. Die Aktualisierung wird beispielsweise storniert, wenn einer der eingefügten Werte nicht den richtigen Datentyp hat oder eine Integritätsregel verletzt, die für Spalten oder Datentypen festgelegt wurde.
Eine vereinfachte Version der UPDATE-Syntax lautet wie folgt:
UPDATE Tabellenname SET Spaltenname = Ausdruck WHERE Suchbedingung
Wenn das Unternehmen Newton Ent. (in der Tabelle "Customers" der SQL Anywhere-Beispieldatenbank) von Einstein, Inc. übernommen wird, können Sie den Namen des Unternehmens mithilfe folgender Anweisung aktualisieren:
UPDATE Customers SET CompanyName = 'Einstein, Inc.' WHERE CompanyName = 'Newton Ent.'; |
Sie können in einer WHERE-Klausel jeden beliebigen Ausdruck verwenden. Wenn Sie nicht sicher sind, wie der Firmenname geschrieben wird, können Sie alle Firmen mit dem Namen "Newton" aktualisieren.Hierzu können Sie z.B. folgende Anweisung verwenden:
UPDATE Customers SET CompanyName = 'Einstein, Inc.' WHERE CompanyName LIKE 'Newton%'; |
Die Suchbedingung muss sich nicht auf die zu aktualisierende Spalte beziehen. Die Unternehmenskennung für Newton Entertainments ist 109. Da diese Kennung der Primärschlüssel für die Tabelle ist, können Sie sicher sein, dass die richtige Zeile aktualisiert wird, indem Sie folgende Anweisung verwenden:
UPDATE Customers SET CompanyName = 'Einstein, Inc.' WHERE ID = 109; |
Sie können auch Zeilen der Ergebnismenge in Interactive SQL ändern. Weitere Hinweise finden Sie unter Ergebnismengen in Interactive SQL bearbeiten.
Die SET-Klausel legt die Spalten, die aktualisiert werden müssen sowie ihre neuen Werte fest. Die WHERE-Klausel legt die Zeilen fest, die aktualisiert werden müssen. Wenn Sie keine WHERE-Klausel eingeben, werden die angegebenen Spalten aller Zeilen mit den Werten aktualisiert, die in der SET-Klausel eingegeben wurden.
Sie können in der SET-Klausel beliebige Ausdrücke benutzen, sofern Sie den richtigen Datentyp verwenden.
Die WHERE-Klausel gibt die Zeilen an, die zu aktualisieren sind. Beispiel:Die folgende Anweisung ersetzt das T-Shirt "One Size Fits All" durch ein "Extra Large Tee Shirt":
UPDATE Products SET Size = 'Extra Large' WHERE Name = 'Tee Shirt' AND Size = 'One Size Fits All'; |
Sie können eine FROM-Klausel verwenden, um Daten aus anderen Tabellen in die aktualisierte Tabelle zu übernehmen.
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |