假如有两个表aa和bb,当aa的a列内容否变成是时,bb的b列内容否也变成是,可以用触发器写出来吗?
创建触发器如下,使用 delimiter 修改默认的语句分隔符,创建完改回默认的语句分隔符,关键字 new 表示aa中更新后的那条记录,id假设是两个表中的主键。
delimiter //;
create trigger trig_update_aa_a
after update on aa
for each row
begin
if new.a == '是' then
update bb set b='是' where bb.id=new.id;
end if;
end//
delimiter ;//
可以用触发器实现这个功能。可以在aa表中创建一个触发器,在a列有更新时触发,在触发器中更新bb表中的b列的内容。
CREATE TRIGGER aa_trigger
AFTER UPDATE OF a ON aa
FOR EACH ROW
UPDATE bb SET b = ‘是’ WHERE bb.id = NEW.id;
aa表的a列有更新时,会触发aa_trigger触发器,后面的UPDATE语句会更新bb表中相应行的b列为“是”,其中NEW.id是指在aa表中更新的行的id值。根据实际情况调整以上的代码就行。
请根据实际情况调整以上代码。