Benutzer-Werkzeuge

Webseiten-Werkzeuge


db:mysql:trigger

Dies ist eine alte Version des Dokuments!


Datenbank-Trigger in MySQL

Ein Datenbank-Trigger ist eine automatische Funktion, die in MySQL durch die folgenden Ereignisse angestoßen werden kann:

  • INTERT BEFORE: Vor der Erstellung eines neuen Datensatzes
  • INSERT AFTER: Nach der Erstellung eines neuen Datensatzes
  • UPDATE BEFORE: Vor der Aktualisierung eines bestehenden Datensatzes
  • UPDATE AFTER: Nach der Aktualisierung eines bestehenden Datensatzes
  • DELETE BEFORE: Vor dem Löschen eines bestehenden Datensatzes
  • DELETE AFTER: Nach dem Löschen eines bestehenden Datensatzes

Beispiel 1: Automatisches Update vom Kontostand beim Einfügen eines neuen Buchungssatzes

CREATE TRIGGER `UpdateKontostand` AFTER INSERT ON `Buchungen` 
FOR EACH ROW 
UPDATE Mitspieler
SET Kontostand = ( SELECT SUM(Betrag) FROM Buchungen WHERE Mitspieler = NEW.Mitspieler )
WHERE ID = NEW.Mitspieler 

Bei jedem Einfügen eines neuen Datensatzes in die Tabelle „Buchungen“ wird der das Feld „Kontostand“ in der Tabelle „Mitspieler“ automatisch aktualisiert. Das Schlüsselwort „NEW“ stellt in diesem Kontext den neu angelegten Datensatz in der Tabelle „Buchungen“ dar.

db/mysql/trigger.1541951844.txt.gz · Zuletzt geändert: 2018/11/11 16:57 (Externe Bearbeitung)