标签:
触发器
触发源: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