我在以下代码中遇到错误。
CREATE TRIGGER au_auction AFTER UPDATE ON dmtable
FOR EACH ROW
BEGIN
IF NEW.bid > OLD.bid THEN
INSERT INTO auction_log(auction,id,ts,item,bid) VALUES('update',NEW.id,NEW.ts,NEW.item,NEW.bid);
END IF;
END;
问题出在语法层面...您能提供更多信息吗?
这是错误消息:
Error Code: 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 '' at line 5
MySql 5.x
谢谢
最佳答案
DELIMITER //
CREATE TRIGGER au_auction AFTER UPDATE ON dmtable
FOR EACH ROW
BEGIN
IF NEW.bid > OLD.bid THEN
INSERT INTO auction_log(auction,id,ts,item,bid)
VALUES('update', NEW.id, NEW.ts, NEW.item, NEW.bid);
END IF;
END//
DELIMITER ;
阅读documentation about creating triggers ,这些例子很有帮助。
关于mysql - mysql触发器定义中的if语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11601493/