【发布时间】:2017-05-10 01:14:13
【问题描述】:
我正在尝试使此代码正常工作,但无济于事..
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 ;
我有两个表,如果 tbl1 被更新,我想要一个触发器来更新 tbl2,前提是数据已经存在于 tbl2 上,否则,插入它。我的代码似乎可行,错误似乎与语法有关,但我找不到。
编辑:
这是错误:
#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
【问题讨论】:
标签: mysql sql if-statement database-trigger