奇了个怪了.
创建一个after insert 触发器
直接按F5执行 没有达到我的目的,而且就好像触发器根本没被触发的感觉
用调试执行,无论是步过,步入,或者直接让其恢复运行.都能正常触发触发器
触发器内用了游标,大致语句如下
declare _Cursor cursor GLOBAL for select A _c1,A_c2 from inserted A
open _Cursor
declare @var1 int
declare @var2 int
while @@FETCH_STATUS = 0
begin
fetch next from _Cursor into @var1 ,@var2
--访问游标操作......
end
close _Cursor
deallocate _Cursor
我不知道这样的语句为什么会导致,调试模式下执行有效.直接执行无效呢
小弟新手,分比较少,希望各路英雄不吝赐教,小弟感激不尽
------解决思路----------------------
1、注意一下权限问题,调试的权限跟实际的权限,看看差异的地方
建议不要在触发器中使用游标,因为它们可能会降低性能。 若要设计一个影响多行的触发器,请使用基于行集的逻辑,而不要使用游标。
参考 http://msdn.microsoft.com/zh-cn/library/ms190752.aspx