使用sql游标实例分享

--1.将每个老师的工资更新为原来的工资+奖金

--定义两个变量,用来存储ttid与reward

declare @tid int
declare @reward money

--1。建立一个基于奖金表的游标

declare cur_reward cursor fast_forward for

select ttid,reward from TblTeacherSalary


--2.打开游标
open cur_reward

--通过游标读取数据
fetch next from cur_reward into @tid,@reward
while @@fetch_status=0
begin

--更新工资
update TblTeacher set ttsalary=ttsalary+@reward where ttid=@tid
fetch next from cur_reward into @tid,@reward
end

--3.关闭游标
close cur_reward

--4.释放资源
deallocate cur_reward

说明:在一般情况下,不要使用游标。性能极点低下。 假如在处理大量数据。普通的sql 执行非常慢时,这个时候可以试试游标。也许会给你带来意想不到效果

 

游标可以将通过查询语句查找出来的数据集合进行遍历时候做一些逻辑处理操作。

posted @ 2015-12-03 16:52  l1honghui  阅读(188)  评论(0编辑  收藏  举报