SQL Server游标语句的使用方法介绍

编程语言及工具

99人已加入

描述

  --声明一个游标

  DECLARE MyCursor CURSOR

  FOR SELECT TOP 5 FBookName,FBookCoding FROM TBookInfo//定义一个叫MyCursor的游标,存放for select 后的数据

  --打开一个游标

  OPEN MyCursor//即打开这个数据集

  --循环一个游标

  DECLARE @BookName nvarchar(2000),@BookCoding nvarchar(2000)

  FETCH NEXT FROM MyCursor INTO @BookName,@BookCoding//移动游标指向到第一条数据,提取第一条数据存放在变量中

  WHILE @@FETCH_STATUS =0//如果上一次操作成功则继续循环

  BEGIN

  print ‘name’+@BookName

  FETCH NEXT FROM MyCursor INTO @BookName,@BookCoding//继续提下一行

  END

  --关闭游标

  CLOSE MyCursor

  --释放资源

  DEALLOCATE MyCursor

  代码:

  create table #a

  (

  id varchar(20),

  name varchar(20)

  )

  insert into #a select 1,‘jack’

  insert into #a select 2,‘join’

  insert into #a select 3,‘make’

  declare mycursor cursor

  for select * from #a

  open mycursor

  declare @id varchar(20),@name varchar(20)

  fetch next from mycursor into @id,@name

  while @@fetch_status=0

  begin

  select @id,@name

  fetch next from mycursor into @id,@name

  end

  close mycursor

  deallocate mycursor

  游标属于行级操作 消耗很大 SQL查询是基于数据集的所以一般查询能有 能用数据集 就用数据集 别用游标 数据量大 是性能杀手

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分