Databases Reference
In-Depth Information
fende Eigenschaften von Attributwerten, die mit AND und OR
verknüpft sowie mit NOT negiert werden können.
Betrachtet man die letzte Änderung der Tabelle kritisch, so
kann man feststellen, dass die Bedingung nicht optimal ist. Falls
es mehrere Kunden mit dem Namen Edna gäbe, würden die
beschriebenen Änderungen für alle diese Kunden vorgenom-
men. Eine wesentlich bessere Bedingung wäre Knr=4 gewesen.
Lässt man die WHERE -Bedingung ganz weg, wird sie als „wahr“
interpretiert, d. h. die Änderungen beziehen sich auf alle Zeilen.
Innerhalb des SET -Blocks wird zunächst für jede Zuweisung
die rechte Seite ausgewertet und dann der Wert des auf der lin-
ken Seite genannten Attributs entsprechend verändert. Dies
ermöglicht auch eine Änderung eines Attributwertes in Abhän-
gigkeit von seinem alten Wert. Durch den folgenden Befehl
kann man z. B. das Gehalt aller Verkäufer um 5% erhöhen.
UPDATE Verkaeufer
SET Gehalt=Gehalt * 1.05
Auswertung von
SET
Änderung in
Abhängigkeit
von alten Wer-
ten
Die resultierende Tabelle sieht wie folgt aus:
VNR NAME STATUS GEHALT
---------- ------ ------- ----------
1001 Udo Junior 1575
1002 Ute Senior 1995
1003 Uwe Senior 2100
1004 Ulf Junior
1005 Urs Junior 1365
Man erkennt, dass irgendwelche Operationen auf NULL-
Werten, hier z. B. die Multiplikation, keinen Effekt haben. Das
Ergebnis bleibt NULL.
Nach dem Einfügen und Verändern fehlt noch als dritter Befehl
der Befehl zum Löschen von Daten. Dies geschieht durch DE-
LETE . Will man z. B. den Kunden mit der Knr 3 löschen, so
kann man dies durch folgenden Befehl erreichen:
DELETE FROM Kunde
WHERE Knr=3
Die allgemeine Syntax lautet:
Löschen von Da-
ten
DELETE FROM <Tabellenname>
WHERE <Bedingung>
Für die ausgewählte Tabelle wird für jede Zeile geprüft, ob die
Auswertung der Bedingung „wahr“ ergibt. Ist dies der Fall, so
121
Search WWH ::




Custom Search