SQLSERVER之游标
参考游标的简单使用:https://blog.csdn.net/duqiang741/article/details/80851827
https://www.cnblogs.com/yubuye-tk/p/9085052.html
--1.创建一个游标
declare my_cursor01 cursor for --my_cursor为游标的名称,随便起
select id,name from test1 --这是游标my_cursor的值,这里随便发挥看业务场景
--2.打开游标
open my_cursor01 --没什么好说的
--变量
declare @id int --声明变量 ‘declare’为声明变量 ‘@name’为变量名称 后面为变量类型
declare @name varchar(50) --这里是两个变量用来接收游标的值
--循环游标
fetch next from my_cursor01 into @id,@name --获取my_cursor的下一条数据,其中两个字段分别赋值给@id,@name
while @@FETCH_STATUS =0 --加入检索到了数据继续执行
begin
print(@name) --打印变量
select * from test1 where id=@id --这里是具体业务
fetch next from my_cursor01 into @id,@name --获取下一条数据并复制给变量
end
close my_cursor01 --关闭释放游标
游标使用5步法:
- 1.声明游标:Declare Cursor
- 2.打开游标:Open Cursor
- 3.读取数据
- 4.关闭游标:Close
- 5.删除游标: Deallocate
附:SqlServer游标详解:https://www.cnblogs.com/zhaoshujie/p/10070321.html
“fool me once,shame on you. fool me twice, shame on me.”,翻译过来的意思是“愚弄我一次,是你坏;愚弄我两次,是我蠢”。