Databases Reference
In-Depth Information
GNR GNAME FLAECHE
---------------------- ------ -----------------
1 Wald 30
2 Feld 20
3 Weide 15
4 Heide 80
5 Halle 50
Um den View vollständig nutzbar zu machen, können auch
INSTEAD OF-Trigger für DELETE und UPDATE in ähnlicher
Form geschrieben werden.
Werden sehr viele Trigger in einem System genutzt, kann das
die Bearbeitungszeit stark negativ beeinflussen, da z. B. ein
Trigger mit FOR EACH ROW für jeden Eintrag abgearbeitet
werden muss. Bei sehr vielen Triggern kann es ein weiteres
Problem geben, da ein Trigger, der z. B. ein INSERT-Statement
ausführt, dadurch einen neuen Trigger anstoßen kann. Durch
diesen Mechanismus können Ketten von Triggeraufrufen ent-
stehen, die dann schrittweise abgearbeitet werden müssen.
Führt ein INSERT-Trigger einer Tabelle B dabei ein INSERT auf
einer Tabelle A aus, was dann einen Trigger anstößt, der ein
INSERT auf B ausführt, kann es zu Zyklen in der
Triggerausführung kommen, was letztendlich zu Endlosschlei-
fen führen könnte. Um dieses Problem zu meiden, werden Ta-
bellen, auf denen gerade ein Trigger läuft, gesperrt und falls bei
der weiteren Triggerausführung erneut auf die Tabelle zurück-
gegriffen wird, wird die gesamte Aktion mit einer Fehlermel-
dung abgebrochen.
Gefährliche Ket-
ten von Triggern
12.4
Aufgaben
Wiederholungsfragen
Versuchen Sie zur Wiederholung folgende Aufgaben aus dem
Kopf, d. h. ohne nochmaliges Blättern und Lesen zu bearbeiten.
1.
Wozu gibt es Stored-Procedures?
2.
Erklären Sie anschaulich den typischen Aufbau einer Stored
Procedure.
3.
Warum machen Ausgaben in Stored Procedures nur einge-
schränkt Sinn?
4.
Wozu dient in Oracle die Tabelle Dual?
277
Search WWH ::




Custom Search