游标使用
--创建临时表,查询数据
select objeid into #T from table1
--使用游标begin
declare @saveId nvarchar(600) --存储游标的值
DECLARE vendor_cursor CURSOR FOR select objeid from #t --创建游标
OPEN vendor_cursor --打开游标
FETCH NEXT FROM vendor_cursor INTO @saveId --遍历数据
WHILE @@FETCH_STATUS = 0 --判断状态,0没有错误
begin
set @reobjids=@reobjids+','+@saveId
FETCH NEXT FROM vendor_cursor INTO @saveId --遍历数据
end
CLOSE vendor_cursor --关闭游标
DEALLOCATE vendor_cursor --释放资源
--使用游标 end
根据以上的实例,游标包括这些组成部分:
DECLARE语句 – 声明在代码块中使用的变量
DECLARE CURSOR语句 – 在游标中填充将要求取的值。
注意 – DECLARE CURSOR FOR语句和SELECT语句中具有相同数量的变量。变量数目可能是一个或者很多个并且有相关联的列。
OPEN语句 – 打开游标,开始进行数据处理
FETCH NEXT语句 – 从游标中把具体的值分配给变量
这个逻辑用于WHILE语句之前的初始对象,接着作为WHILE语句的一部分在这个过程的每个循环中再次执行。
WHILE语句 – 作为开始的条件,继续处理数