zoukankan      html  css  js  c++  java
  • sql Cursor的用法

    table1结构如下
     2 id    int
     3 name  varchar(50)
     4 
     5 declare @id int
     6 declare @name varchar(50)
     7 declare cursor1 cursor for         --定义游标cursor1
     8 select * from table1               --使用游标的对象(跟据需要填入select文)
     9 open cursor1                       --打开游标
    10 
    11 fetch next from cursor1 into @id,@name  --将游标向下移1行,获取的数据放入之前定义的变量@id,@name中
    12 
    13 while @@fetch_status=0           --判断是否成功获取数据
    14 begin
    15 update table1 set name=name+'1'
    16 where id=@id                           --进行相应处理(跟据需要填入SQL文)
    17 
    18 fetch next from cursor1 into @id,@name  --将游标向下移1行
    19 end
    20 
    21 close cursor1                   --关闭游标
    22 deallocate cursor1 

    游标一般格式:
    DECLARE 游标名称 CURSOR FOR SELECT 字段1,字段2,字段3,... FROM 表名 WHERE ...
    OPEN 游标名称
    FETCH NEXT FROM 游标名称 INTO 变量名1,变量名2,变量名3,...
    WHILE @@FETCH_STATUS=0
            BEGIN
                      SQL语句执行过程... ...
                      FETCH NEXT FROM 游标名称 INTO 变量名1,变量名2,变量名3,...
            END
    CLOSE 游标名称
    DEALLOCATE 游标名称 (删除游标)
    参考:http://www.cnblogs.com/Gavinzhao/archive/2010/07/14/1777644.html

  • 相关阅读:
    [HAOI2008]下落的圆盘
    10.2 上午 考试
    10.1 考试 ..........
    9.29 考试
    博弈论笔记
    bzoj_1022: [SHOI2008]小约翰的游戏John
    课程总结第十五周
    团队冲刺第二阶段09
    团队冲刺第二阶段08
    对搜狗输入法的评价
  • 原文地址:https://www.cnblogs.com/ouzilin/p/5156732.html
Copyright © 2011-2022 走看看