我正在尝试在数据库上创建触发器。我可以使它在SQL小提琴中正常工作,但是当我尝试在Sequal Pro中创建触发器时,只会出现错误。
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 '' at line 8
Run Code Online (Sandbox Code Playgroud)
这是SQL小提琴.. http://sqlfiddle.com/#!2/e849f/1
创建架构后,我使用的过程是在查询窗口中执行以下命令。
CREATE TRIGGER upd_selectoin
BEFORE UPDATE ON main
FOR EACH ROW
BEGIN
IF NEW.state = 3 THEN
UPDATE selection s JOIN main m
ON m.main_id = s.id
SET s.allow = 1, last_update_timestamp = NOW()
WHERE s.id = NEW.main_id;
END IF;
END;
Run Code Online (Sandbox Code Playgroud)
小智 5
对于有相同问题的任何人:
Sequel Pro自行创建周围的语句。因此该语句应如下所示:
IF NEW.state = 3 THEN
UPDATE selection s JOIN main m
ON m.main_id = s.id
SET s.allow = 1, last_update_timestamp = NOW()
WHERE s.id = NEW.main_id;
END IF;
Run Code Online (Sandbox Code Playgroud)