我无法弄清楚为什么这个触发器创建语法失败了:
CREATE TRIGGER mytrigger BEFORE UPDATE ON mytable
FOR EACH ROW
BEGIN
IF NEW.col1 = 0 AND NEW.col2 != '' AND NEW.col3 > 0 THEN
SET NEW.col1 = NEW.col3 - (10 * 60);
END IF;
END;
MySQL说在第5行有一个语法错误,就在SET语句之前/之后。我正在使用MySQL 5.0.27。我看不出有什么问题,因为它与给出in the manual 3/4的示例非常相似。
PS:我在PhpMyAdmin的SQL选项卡中输入了这个。添加“分隔符”语句没有帮助。有线索吗?提前谢谢!
答案 0 :(得分:0)
我找到了。显然,当作为SQL查询的一部分输入时,PhpMyAdmin会忽略MySQL的分隔符命令。相反,您需要在SQL查询下面的单独表单字段中设置分隔符。我完全错过了!