以下是实现该触发器的MySQL代码:

CREATE TRIGGER update_aaa_contacts AFTER UPDATE ON bbb
FOR EACH ROW
BEGIN
    IF NEW.user <> OLD.user OR NEW.contact <> OLD.contact OR NEW.status <> OLD.status THEN
        UPDATE aaa SET contacts = contacts + 1 WHERE id = NEW.aaa_id;
    END IF;
END;

解释:

  • CREATE TRIGGER:创建触发器。
  • update_aaa_contacts:触发器的名称。
  • AFTER UPDATE ON bbb:在bbb表的更新之后触发。
  • FOR EACH ROW:对于每一行执行触发器。
  • IF NEW.user <> OLD.user OR NEW.contact <> OLD.contact OR NEW.status <> OLD.status THEN:判断更新的列是否为user、contact、status。
  • UPDATE aaa SET contacts = contacts + 1 WHERE id = NEW.aaa_id;:如果更新的列为user、contact、status,则更新aaa表的contacts字段加1,其中aaa_id为bbb表中关联aaa表的字段。
mysql触发器在更新bbb表成功之后如果更新的是usercontactstatus就触更新aaa表并设置aaa表的contats=contacts+1

原文地址: https://www.cveoy.top/t/topic/bBRL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录