Was ist Trigger in SQL und warum verwenden Sie Trigger in SQL?

1 Antworten


  • Ein Datenbank-Trigger ist ein prozeduraler Code, der automatisch als Reaktion auf bestimmte Ereignisse in einer bestimmten Tabelle in einer Datenbank ausgeführt wird. Trigger können den Zugriff auf bestimmte Daten einschränken, Protokollierungen durchführen oder Datenänderungen überprüfen.

    Es gibt zwei Klassen von Triggern, entweder "Zeilen-Trigger" oder "Anweisungs-Trigger". Bei Zeilen-Triggern können Sie für jede Zeile einer Tabelle eine Aktion definieren, während Anweisungs-Trigger nur einmal pro INSERT-, UPDATE- oder DELETE-Anweisung auftreten. Trigger können nicht zum Überwachen des Datenabrufs verwendet werden.

    Jede Klasse kann von mehreren Typen sein. Es gibt "BEFORE Trigger" und "AFTER Trigger", die den Zeitpunkt der Ausführung des Triggers identifizieren. Es gibt auch einen "INSTEAD OF-Trigger", bei dem es sich um einen bedingten Trigger handelt, der anstelle der auslösenden Anweisung ausgelöst wird. Allerdings sind "INSTEAD OF Trigger" nur für Ansichten verfügbar.

    Normalerweise gibt es drei auslösende EREIGNISSE, die das Auslösen des Triggers bewirken:

    INSERT-Ereignis (wenn ein neuer Datensatz in die Datenbank eingefügt wird).
    UPDATE-Ereignis (da ein Datensatz geändert wird).
    DELETE-Ereignis (während ein Datensatz gelöscht wird).
    Die SQL:2003-Standardmandate, die Trigger geben, geben Programmierern Zugriff auf Datensatzvariablen mittels einer Syntax wie REFERENCING NEW AS n. Wenn ein Trigger beispielsweise Änderungen an einer Gehaltsspalte überwacht, könnte man einen Trigger wie den folgenden schreiben:

Schreibe deine Antwort

Ihre Antwort erscheint nach der Moderation appear