在 before update 中可以使用如下语句set new.count=old.count+1
delimiter $$ create trigger tri_tri before update on tri FOR EACH ROW BEGIN if(NEW.type != OLD.type) then set NEW.count = OLD.count + 1; end if; end $$
语句里面的 type 改成你需要的flag 表名 tri 改成你需要的 a
count必须有默认值吧,可以设置 count int not null default 0; 也可以用insert triggerdelimiter // ----------------------------------------------- create trigger tri_insert before insert on table_name for each row begin NEW.count = 1; end // ----------------------------------------------- update trigger , 同6楼 create trigger tri_update begore update on table_name for each row begin if (new.flag != old.flag) then set new.count = old.count + 1; end if; end // ----------------------------------------------- delimiter ;未经验证,可能有错。
create trigger tri_tri before update on tri
FOR EACH ROW BEGIN
if(NEW.type != OLD.type) then
set NEW.count = OLD.count + 1;
end if;
end $$
表名 tri 改成你需要的 a
count int not null default 0;
也可以用insert triggerdelimiter //
-----------------------------------------------
create trigger tri_insert before insert on table_name for each row begin
NEW.count = 1;
end //
----------------------------------------------- update trigger , 同6楼
create trigger tri_update begore update on table_name for each row begin
if (new.flag != old.flag)
then set new.count = old.count + 1;
end if;
end //
-----------------------------------------------
delimiter ;未经验证,可能有错。