游标定义
sql语言按照标准处理对象是集合,但有时候也需要针对单行的处理,所以就有了游标,类似C语言的指针一样。
使用方法
创建游标
declare cursor_name --游标名称,唯一标识 [insensitive] [scroll] cursor for select_statement --查询语句 [for {read only| update [of column_name [,…n]]}]
read only
设置游标数据只读,指定read only后,对底层表的改动不会更新其游标数据。
示例
drop table #temp --创建游标 create table #temp( code varchar(128), name nvarchar(256) ) insert into #temp values(‘1111‘,‘aaaa‘) insert into #temp values(‘1112‘,‘bbbb‘) insert into #temp values(‘1113‘,‘cccc‘) declare cursor_demo scroll cursor for select code,name from #temp order by code --打开游标 open cursor_demo --定义变量 declare @code varchar(128), @name nvarchar(256) --提取最后一行学校信息 fetch last from cursor_demo into @code, @name print ‘code:‘ + @code + ‘ name:‘ + @name --关闭游标 close cursor_demo --释放游标 deallocate cursor_demo