我有两个触发器Instead of update
而另一个是after update
在同一个表上用于相同的任务但仅在更新后触发而不是触发器,而如果我有两个触发后,则两者都在更新时触发。这是怎么回事?
create trigger tr_tmp_instead on emp
Instead of update
as
begin
declare @name varchar(50),@message varchar(200)='Updated name Entered Successfully';
select @name=d.name from inserted d;
insert into tmp_Instead values(getdate(),@message,@name)
Print 'Trigger Fired, Updated name Entered Successfully Into tmp_Instead Table..'
end
create trigger tr_tmp on emp
after update
as
begin
declare @name varchar(50),@message varchar(200)='Updated name Entered Successfully';
select @name=d.name from inserted d;
insert into tmp values(getdate(),@message,@name)
Print 'Trigger Fired, Updated name Entered Successfully Into tmp Table..'
end
答案 0 :(得分:0)
INSTEAD OF
触发器会覆盖它定义的默认操作。
当您在UPDATE
上拨打emp
时,emp
并未发生实际更新,AFTER UPDATE ON emp
永远不会触发。