mep*_*218 2 mysql sql t-sql triggers
我有一个错误,我无法理解它.这是我的触发器的代码:
CREATE TRIGGER before_insert_test
BEFORE INSERT ON player_totals FOR EACH ROW
BEGIN
IF NEW.Player = 'Player' THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'basketball-reference duplicate header';
END IF;
END;
Run Code Online (Sandbox Code Playgroud)
我在MySQL workbench源代码编辑器中获得3行的红色错误标记.对于开始的线SIGNAL SQLSTATE ...,它说:
语法错误:缺少'分号'
对于读取的行,END IF;错误说:
语法错误:END(end)无效输入此位置.
对于读取的行,END;错误说:
发现无关输入 - 预期结束语
只是不确定如何修复这些错误,从我看到的这看起来像正确的语法...
尝试这一个,$$之后END
DELIMITER $$
CREATE TRIGGER before_insert_test
BEFORE INSERT ON player_totals
FOR EACH ROW
BEGIN
IF NEW.Player = 'Player' THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'basketball-reference duplicate header';
END IF;
END; $$
DELIMITER ;
Run Code Online (Sandbox Code Playgroud)