SQL SERVER中游标的使用
准备基础数据
CREATE TABLE [dbo].[person_info](
[name_person] [varchar](32) NULL,
[age] [int] NULL,
[address] [varchar](128) NULL
) ON [PRIMARY]
insert into person_info values ('tom',20,'new york'),('john',23,'England')
建立游标进行每行遍历处理
declare @name varchar(50) -- 定义变量,存储游标返回的值
declare x cursor
for
select name_person from person_info -- 定义游标,游标的值从 person_info中取
open x --打开游标
fetch next from x into @name -- 获取游标的下一个
while @@FETCH_STATUS =0 -- - 0 FETCH 语句成功 -1 FETCH 语句失败或此行不在结果集中-2 被提取的行不存在
begin
print '姓名:'+@name
fetch next from x into @name -- 转到下一行,否则出现死循环
end
close x -- 关闭游标
deallocate x --释放游标
链接:一个比较详细的blog

浙公网安备 33010602011771号