触发器能被触发多少次?
【试验】
一个触发器在一个表上,for insert,update,delete
declare @i int;
set @i = 1;
while(@i <100)
begin
insert into table......
set @i = @i + 1;
end
--触发器执行99次
delete from table where id between 1 and 10;
--触发器执行一次,影响数=10
在mssql和sybase都运行了,都是如此。
简单结论:触发器和执行语句有关,而非执行语句影响记录有关!!
【
一直以为新增N条记录或删除N条记录都对触发器的执行都应该是N次。
由上试验可知道,并非这样的~~
无论是否有影响,只要满足触发关键字都要对触发器进行一次触发~
ps:多次执行同一句删除语句,第一次影响N条,后面都影响0条。但跟踪结果触发器还是执行多次~~
】
无论生活、还是技术,一切都不断的学习和更新~~~努力~