• 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 的时候,游标查询的结果有,游标就会将查询到的数据直接存入游标捕捉数据的变量中

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

  • 相关阅读:
    算法初探
    OIer数学相关
    算法初探
    MySQL事务
    MySQL多表查询
    数据库的设计
    winform选择文件夹
    获取上次打开目录
    C#拆分中文和数字字符串
    uCharts如何设置双Y轴,左侧一个右侧一个,数据源与对应的Y轴绑定
  • 原文地址:https://www.cnblogs.com/chidao/p/12938101.html
Copyright © 2020-2023  润新知