Bei einem Trigger handelt es sich ebenfalls um einen Programmcode, welcher allerdings nicht wie Funktion und Prozedur direkt aufgerufen wird, sondern bei Ausführung von SQL-Anweisungen automatisch mit ausgeführt wird.
Diese SQL-Anweisungen betreffen den Bereich der Datenmanipulation. Dazu gehören insert,update und delete. Sobald also bei einer Tabelle Daten eingetragen, aktualisiert oder gelöscht werden, können weitere Aktionen ausgeführt werden.
Wir können zwei Trigger für eine Tabelle festlegen:
VOR dem Hinzufügen eines Datensatz und NACH dem Hinzufügen eines Datensatzes
(1) vor dem Hinzufügen einer neuen Ausleihe wird das Startdatum der Ausleihe auf das aktuelle Datum festgelegt.
(2) nach dem Hinzufügen einer neuen Ausleihe soll der Bestand soll ein Vermerk in der Tabelle Buch erfolgen, dass das Buch ausgeliehen wurde.
Auch hier gibt es zwei Trigger für eine Tabelle: VOR der Aktualisierung und NACH der Aktualisierung
Bevor der Preis eines Buches aktualisiert wird, soll in einer Tabelle mit Zeitstempel die versuchte Aktualisierung archiviert werden. Dazu werden alter und neuer Preis verwendet.
Auch hier gilt: ein Trigger VOR dem Löschen eines Datensatzes und einen NACH dem Löschen eines Datensatzes.
Nach dem Löschen eines Regals sollen Bücher, die sich in diesem Regal befanden, dem Lager zugewiesen werden.