由于业务需要,所以需要通过触发器来实现,刚刚开始使用触发器,遇到了一些坑,希望和我一样的初始者能避开。
CREATE TRIGGER `trigger_alarm_month` AFTER INSERT ON `t_alarm_month_stat` FOR EACH ROW BEGIN
IF @disable_trigger IS NULL THEN
SET @disable_trigger = 1;
INSERT INTO
yw_ms.t_alarm_month_stat
VALUES
(ID,NEW.MCUSN,NEW.DT,NEW.ALARM_CODE,NEW.ALARM_NUM);
SET @disable_trigger = NULL;
END IF;
END;
对于红色部分的内容,一直在纠结是不是应该加,似乎也没什么影响,经过测试之后发现,当然有影响了。这部分是在做触发器的控制是否执行,如果需要表之间双向同步,那避免递归所以要加上,但是如果不是,就不要加了,并且如果有多个触发器,设置参数不要相同,这个就相当于是全局的变量,都用一个岂不乱了