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

  --声明一个游标

  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查询是基于数据集的所以一般查询能有 能用数据集 就用数据集 别用游标 数据量大 是性能杀手

技术专区

  • mybatis动态sql详解
  • 用VHDL语言设计数据传输系统中的HDB3编码器
  • 裸机程序如何驱动硬件?看前辈是怎么说的
  • 应用面向对象编程SoC原则的典型示例
  • 嵌入式开发之java常用开发工具介绍
  • SQL Server游标语句的使用方法介绍已关闭评论
    A+
发布日期:2019年07月14日  所属分类:物联网