【发布时间】:2022-11-12 12:03:12
【问题描述】:
我有一个触发器:
CREATE TRIGGER Moves
AFTER INSERT ON Rolls
FOR EACH ROW
UPDATE Players
CASE
WHEN P_Location + NEW.Rolls < 17 THEN
SET P_Location = P_Location + NEW.Rolls
WHERE id = NEW.Player_id
ELSE
SET P_Location = NEW.Rolls - (16 - P_Location)
END;
但是语法在某处不正确并产生错误。我已经在这个网站上检查过类似的问题,但我看到的那些似乎使用了在这种情况下似乎不起作用的方法(特别是使用 IF)。我希望主要条件是
IF P_Location + NEW.Rolls < 17 THEN
SET P_Location = P_Location + NEW.Rolls
WHERE id = NEW.Player_id
而ELSE 部分是
SET P_Location = NEW.Rolls - (16 - P_Location)
触发器内。谁能解释一下我该怎么做?
【问题讨论】:
标签: mysql sql triggers mysql-workbench