Ich versuche, diesen Code Arbeit zu machen, aber ohne Erfolg ..MySQL Trigger if-else-Insert Update
DELIMITER $$
CREATE
TRIGGER `update_tbl1` AFTER UPDATE
ON `tbl1`
FOR EACH ROW BEGIN
IF (SELECT count(*) FROM tbl1 WHERE stn=NEW.stn) = 1
THEN
UPDATE tbl2 SET date_posted=NEW.date_posted WHERE stn=NEW.stn;
ELSE
INSERT INTO tbl2 (stn) VALUES (NEW.stn);
END IF
END$$
DELIMITER ;
Ich habe zwei Tabellen, und ich möchte einen Trigger, tbl2 zu aktualisieren, wenn die tbl1 ist aktualisiert, nur wenn die Daten bereits auf dem Tabl2 vorhanden sind, andernfalls einfügen. Mein Code scheint machbar und der Fehler scheint syntaxbezogen zu sein, aber ich kann nicht finden wo.
EDIT:
Hier ist der Fehler:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INTO tbl2 (stn) VALUES (NEW.stn); END IF END' at line 10
Ich bin so verlegen, aber danke für Ihre Adleraugen! :) – xjshiya