• SQLSERVER 循环


    --- SQLSERVER 循环
    declare @num int
    declare @datediff int
    select @datediff=datediff(day,'2007-12-12','2008-9-10)
    set @num=0
    while @num<@datediff
    begin
    insert into cms_count values('192.168.1.174','1','狗狗','http://gougou.com/','1280*780','IE','Vasta','www.163.com',dateadd(day,@num,'2007-12-12') )
    set @num=@num+1
    end

    --- 游标

    DECLARE My_Cursor CURSOR --定义游标
    FOR (SELECT * FROM dbo.MemberAccount) --查出需要的集合放到游标中
    OPEN My_Cursor; --打开游标
    FETCH NEXT FROM My_Cursor ; --读取第一行数据
    WHILE @@FETCH_STATUS = 0
    BEGIN
    --UPDATE dbo.MemberAccount SET UserName = UserName + 'A' WHERE CURRENT OF My_Cursor; --更新
    --DELETE FROM dbo.MemberAccount WHERE CURRENT OF My_Cursor; --删除
    FETCH NEXT FROM My_Cursor; --读取下一行数据
    END
    CLOSE My_Cursor; --关闭游标
    DEALLOCATE My_Cursor; --释放游标
    GO
    -------------------------------------------------------
    Sql中的游标指针的位置判断:

    0 FETCH 语句成功   
    -1 FETCH 语句失败或此行不在结果集中   
    -2 被提取的行不存在   
    @@fetch_status 值的改变是通过 fetch next from 实现的
    “FETCH NEXT FROM Cursor”
    0 的时候,游标查询的结果有,游标就会将查询到的数据直接存入游标捕捉数据的变量中

    --------------------------------

  • 相关阅读:
    Java 过滤器的作用
    TreeView的绑定
    设计模式(一)工厂模式Factory(创建型)
    【剑指offer】员工年龄排序
    Spring3.0 AOP 具体解释
    IT行业新名词--透明手机/OCR(光学字符识别)/夹背电池
    MYSQL C API 记录
    Hibernate的介绍
    数据绑定(八)使用Binding的RelativeSource
    一、ExtJS下载使用
  • 原文地址:https://www.cnblogs.com/chidao/p/12938101.html
Copyright © 2020-2023  润新知