0
我疯了一个MySQL触发器。 MySQL说代码中有一个错误,但我无法弄清楚有什么问题。MySQL TRIGGER ON INSERT问题
这是触发
CREATE TRIGGER UPDATE_COUNTRY
AFTER INSERT
ON `dog`FOR EACH ROW
BEGIN
IF (NEW.export=1)
THEN
IF (NEW.year > (SELECT MAX(`updated_year`) FROM `dog` WHERE `code`=NEW.origin))
THEN
UPDATE `dog` SET `updated_year`= NEW.year, `updated_month`= NEW.month WHERE `code`= NEW.origin;
ELSEIF (NEW.year = (SELECT MAX(`updated_year`) FROM `dog` WHERE `code`=NEW.origine)
AND NEW.month > (SELECT MAX(`updated_month`) FROM `dog` WHERE `code`=NEW.origine AND `updated_year`=NEW.year))
THEN UPDATE `dog` SET `updated_month`=NEW.month WHERE `code`=NEW.origin;
ELSE
RETURN NEW;
END IF;
END IF;
RETURN NEW;
END;
我的SQL说
您的SQL语法错误;检查对应于你的MySQL服务器版本的手册,在第13行使用正确的语法“''在第13行
谢谢大家!
它给我一个错误,同时更新不同的表格 –
您可能会改写它吗? 是给你一个错误吗? ,查询或存储过程? 错误消息和代码如何?是否与您的帖子相同? –
错误是在查询中,当我尝试使用查询声明触发器时,mySQL给了我错误。我认为这是一个sintax错误。 –