Hallo liebe Community,
ich probiere verzweifelt einen MySQL (MariaDB) After Update Trigger zu erstellen, der den Wert einer anderen Tabelle ändert.
Beispiel:
Ich habe 2 Tabellen.
Tabelle 1 (Hier liegt der Trigger drauf) als auch Tabelle 2 haben ein Feld status. Bei einem Update soll nun der t2.status in Tabelle 2 auf „FEHLGESCHLAGEN“ gesetzt werden, sobald der t1.status in Tabelle 1 auf „FAILED“ springt.
Mein trigger bisher:
Da ich den Trigger mit HeidiSQL erstelle (Rechtsklick auf Tabelle --> Neu erstellen --> Trigger) füge ich hier nur folgendes ein:
Ich bekomme aber ständig die Fehlermeldung das ich einen Syntaxfehler nähe dem
Ich habe auch schon probiert den UPDATE Befehl mit eine LEFT JOIN zu versehen. Hatte auch kein Erfolgt und dürfte eigtl. auch gar nicht notwendig sein oder?
Freue mich über jede Hilfe.
Beste Grüße,
Canju
ich probiere verzweifelt einen MySQL (MariaDB) After Update Trigger zu erstellen, der den Wert einer anderen Tabelle ändert.
Beispiel:
Ich habe 2 Tabellen.
Tabelle 1 (Hier liegt der Trigger drauf) als auch Tabelle 2 haben ein Feld status. Bei einem Update soll nun der t2.status in Tabelle 2 auf „FEHLGESCHLAGEN“ gesetzt werden, sobald der t1.status in Tabelle 1 auf „FAILED“ springt.
Mein trigger bisher:
SQL:
CREATE TRIGGER after_update
AFTER UPDATE ON tabelle_1
FOR EACH ROW BEGIN
BEGIN
IF (NEW.status = 'FAILED')
THEN
UPDATE tabelle_2 AS t2
SET t2.status = 'FEHLGESCHLAGEN',
END IF;
END
Da ich den Trigger mit HeidiSQL erstelle (Rechtsklick auf Tabelle --> Neu erstellen --> Trigger) füge ich hier nur folgendes ein:
SQL:
BEGIN
IF (NEW.status = 'FAILED')
THEN
UPDATE tabelle_2 AS t2
SET t2.status = 'FEHLGESCHLAGEN',
END IF;
END
Ich bekomme aber ständig die Fehlermeldung das ich einen Syntaxfehler nähe dem
END IF;
habe. Auch ohne Semikolon kommt der Fehler.Ich habe auch schon probiert den UPDATE Befehl mit eine LEFT JOIN zu versehen. Hatte auch kein Erfolgt und dürfte eigtl. auch gar nicht notwendig sein oder?
Freue mich über jede Hilfe.
Beste Grüße,
Canju