发布网友 发布时间:2022-04-08 01:28
共3个回答
懂视网 时间:2022-04-08 05:49
vend_cursor CURSOR FOR SELECT * FROM Purchasing.Vendor OPEN vend_cursor FETCH NEXT FROM vend_cursor WHILE(@@fetch_status=0) BEGIN //BALABALA... FETCH NEXT FROM vend_cursor END CLOSE vend_cursor DEALLOCATE vend_cursor代码分析:首先使用DECLARE来声明游标,表示为哪个结果集;然后是打开游标,使用游标,关闭游标,释放游标。
FETCH从游标处取得数据,WHILE的判断条件为全局变量(@@表示)fetch_status,表示最近依次FETCH的运行结果状态是否成功,为0的话表示成功拿到数据。
T-SQL的游标和fetch
标签:
热心网友 时间:2022-04-08 02:57
@@fetch_status=0 是游标提取数据失败,即数据提取结束到最后了。
游标主要作用是,操作SQL查询结果集。
以下为典型游标的应用:
create proc cursorTest@_id int=0,
@_name varchar(50)=''
as--创建游标
declare @cursor cursor--设定游标欲操作的数据集
set @cursor=cursor for
select _id,_name from users
open @cursor--打开游标
fetch next from @cursor into @_id,@_name--移动游标指向到第一条数据,提取第一条数据存
放在变量中
while(@@fetch_status=0)begin--如果上一次操作成功则继续循环
print @_name--操作提出的数据
fetch next from @cursor into @_id,@_name--继续提下一行
end
close @cursor--关闭游标
deallocate @cursor--删除游标
热心网友 时间:2022-04-08 04:15
oracle里面判断游标是否到最后是游标属性%notfound,可以判断游标是否到最后,其他的数据库也应该有相应的属性吧,游标的作用就和指针类似,从一个结果集一步一步的读出数据,比如