【发布时间】:2023-01-12 16:54:09
【问题描述】:
我对mysql有以下问题: 我有一个带有触发器的表 A,当 A 中的某些内容发生变化时,该触发器会更新表 B 的列。这个触发器有效。
当 B 中的某些内容发生变化时,我需要更新 A 列的可能性,但第二个触发器会产生错误。 我知道是递归的,但我该怎么做呢?
exp.
trigger A:
delimiter $$
CREATE TRIGGER TAU_A
AFTER UPDATE ON table_A FOR EACH ROW
begin
IF OLD.to_read <> NEW.to_read THEN
update table_B
set is_read=if(new.to_read=1,0,1)
where id=new.id;
END IF;
END$$
trigger B:
delimiter $$
CREATE TRIGGER TAU_B
AFTER UPDATE ON table_b FOR EACH ROW
begin
IF OLD.is_read <> NEW.is_readTHEN
update table_a
set to_read=if(new.is_read=1,0,1)
where id=new.id;
END IF;
END$$
【问题讨论】:
标签: mysql triggers mysql-error-1442