SQL中游标的简单使用
SQL中使用游标的好处:
1)允许定位在结果集的特定行
2)从结果集的当前位置检索一行或一部分行
3)支持对结果集总当前位置的行进行数据修改
4)为由其他用户对显示在结果集中的数据库数据所做的更改提供不同级别的可见性支持
5)提供脚本储存过程和触发器中用于访问结果集数据的T-SQL语句
游标的操作顺序:声明游标>>>打开游标>>>读取游标>>>关闭游标>>>删除游标
数据表2张:gongzi表(ID、gongzi)、addgongzi表(ID、addgongzi),两张表的ID是一一对应的。


创建存储过程:
create procedure proc_addgongzi
as
declare cur_addgongzi cursor--声明游标cur_addgongzi
for
select * from addgongzi
declare @ID int--声明变量
declare @addgongzi money
open cur_addgongzi--打开游标
fetch next from cur_addgongzi into @ID,@addgongzi--读取游标
while (@@fetch_status=0)
begin
update gongzi set gongzi+=@addgongzi where ID=@ID --修改数据
fetch next from cur_addgongzi into @ID,@addgongzi--修改完后读取下一个游标
end
close cur_addgongzi--关闭游标
deallocate cur_addgongzi--删除游标
执行该存储过程后再次查询gongzi表数据如下:

浙公网安备 33010602011771号