码迷,mamicode.com
首页 > 其他好文 > 详细

[笔记]触发器和游标

时间:2015-08-21 13:28:13      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

触发器

触发源:insert update delete

after:在触发源执行后执行触发器中的代码

instead of:在触发源执行前执行触发器的代码,同时触发源的操作被废弃

语法:

create trigger 触发器名

on 表名 after insert,update,delete--可以3个都写,也可以只写1个

as

begin

...

end

 

 

 游标

作用:可以逐条操作表中的数据

缺点:性能低,尽量不要使用

示例:为每个人的英语成绩加个随机数

--定义游标

declare s1 cursor for select Name,Gender,English from Table_1

--在访问游标中某行的数据时,需要声明变量

declare @sName nvarchar(50)

declare @sGender bit

declare @sEnglish nvarchar(10)

--打开游标

open s1

--通过游标从结果集中取数据。注意:每次取一行的值

fetch s1 into @sName,@sGender,@sEnglish

--这个全局变量的意思是:当fetch这行没有问题时,就等于

while(@@FETCH_STATUS=0)

begin

set @sEnglish=@sEnglish+RAND(100)

update Table_1 set English=@sEnglish where Name=@sName and Gender=@sGender

--再取,才能循环起来

fetch s1 into @sName,@sGender,@sEnglish

end

--关闭游标

close s1

--释放游标

deallocate s1

[笔记]触发器和游标

标签:

原文地址:http://www.cnblogs.com/shousiji/p/4747389.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!