sqlserver中触发器+游标操作实现

复制代码 代码如下:

create trigger tri_wk_csvhead_history on wk_csvhead_history

–声明一个tri_wk_csvhead_history触发器,

instead of insert —插入操作被代替执行下面的操作

as

begin

declare yb cursor –声明一个游标

for

 select noteno from inserted–这里的noteno要和下面的匹配

 open yb

  declare @noteno varchar(50)–这里的noteno要和上面的匹配,定义一个游标变量@noteno,用来操作insered表中的noteno.

  fetch next from yb into @noteno–这里的noteno要是上面的匹配,移动游标

  while(@@fetch_status=0)–0操作成功,-1 fetch 语句失败或此行不在结果集中,-2 被提取的行不存在

  begin

  delete from wk_csvdetail_history where noteno=@noteno

   delete from wk_csvhead_history where noteno=@noteno

  fetch next from yb into @noteno –继续移动游标,直到@@fetch_status不等于时.

   end

close yb –关闭游标

deallocate yb –释放游标

insert into wk_csvhead_history select * from inserted

end

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐