游标是什么?
游标是SQL 的一种数据访问机制。可以将游标简单的看成是查询的结果集的一个指针。
游标的作用
可以根据需要在结果集上面来回滚动,浏览保存需要的数据,以便以后使用。游标的结果集是有Select语句产生,如果处理过程需要重复使用一个记录集,那么创建一次游标而重复使用,比重复查询数据库要快。
游标的使用
游标的使用一般遵循“五步法”:声明游标—>打开游标—>读取数据—>关闭游标—>删除游标。
游标的简单例子
数据库结构
游标代码
--根据价格设置每本书的等级
--价格50便宜
--50-100中等
-->=100 贵
--定义游标
declare cur_set_lever cursor
for select ID,Price from books
--打开游标
open cur_set_lever
--获取数据。ID,Price
declare @id int
declare @price decimal(18,2)
fetch next from cur_set_lever into @id,@price
--循环获取
while(@@FETCH_STATUS=0)
begin
if(@price<50)
update books set Levels='便宜' where id=@id
else if(@price<100)
update books set Levels='中等' where id=@id
else
update books set Levels='贵' where id=@id
fetch next from cur_set_lever into @id,@price
end
--关闭游标
close cur_set_lever
--释放游标
deallocate cur_set_lever