首页 > 资讯列表 > 编程/数据库 >> 数据库操作教程

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

数据库操作教程 2022-09-23 16:50:27 转载来源: 网络整理/侵权必删

复制代码代码如下:Createtriggertri_wk_CSVHead_Historyonwk_CSVHead_History--声明一个tri_wk_CSVHead_History触发器,insteadofinsert---插入操作被代替执行下面的操作asbegindeclareYBcursor--声明一个游标for selectNoteNOfrominserted--这里的NoteNO要和下面的匹配 openYB  declare@NoteNOvarchar(50)--这里的NoteNO要和上面的匹配,定义一个游标变量@NoteNO,用来操作insered表中的NoteNo.  fetchnextfromYBinto@NoteNO--这里的NoteNO要是上面的匹配,移动游标  while(@@fetch_status=0)--0操作成功,-1FETCH语句失败或此行不在结果集中,-2被提取的行不存在  begin  deletefromwk_CSVDetail_HistorywhereNoteNO=@NoteNO  deletefromwk_CSVHead_Historywhe

复制代码 代码如下:

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

标签: sqlserver 触发器 游标 操作 实现


声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!

站长搜索

http://www.adminso.com

Copyright @ 2007~2024 All Rights Reserved.

Powered By 站长搜索

打开手机扫描上面的二维码打开手机版


使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

站长搜索目录系统技术支持