利用游标循环:
<代码>声明My_Cursor光标——定义游标 (从dbo.Table SELECT *)——查出需要的集合放到游标中 开放My_Cursor;——打开游标 从My_Cursor取下;——读取第一行数据 虽然@@FETCH_STATUS=0 开始 ——更新dbo。表设置字段1=? * *”,当前My_Cursor;——更新 从dbo -删除。表的当前My_Cursor;——删除 从My_Cursor取下;——读取下一行数据 结束 关闭My_Cursor;——关闭游标 释放My_Cursor;——释放游标代码>
利用游标赋值循环:
<代码> 声明@参数1参数1类型,@参数2参数2类型 声明MyCursor光标——定义游标(利用游标循环) (选择字段1,字段2表)——查出需要的集合放到游标中 命令字段1——排序语句放在括号外 开放MyCursor;——打开游标 获取下一个从MyCursor @参数1,@参数2;——读取第一行数据 虽然@@FETCH_STATUS=0 开始 如果条件成立 开始,如需跳过当前循环,需先赋值,再继续下去,否则会进入死循环 获取下一个从MyCursor @参数1,@参数2; 继续;——跳过当前循环,进入下一循环 结束 如果条件成立 开始 打破;——跳出整个循环 结束/*需要在循环内处理的* * * */蛴参数1,参数2;——打印参数值(调试) ——更新表组字段3=*,字段4=*,字段1=@参数1和字段2=@参数2 ——插入表1(字段1,字段2)值(参数1,参数2) ——删除表中字段1=参数1和字段2=参数2 获取下一个从MyCursor @参数1,@参数2;——赋值后进入下一循环 结束 关闭MyCursor;——关闭游标 释放MyCursor;——释放游标代码>
类似为循环的SQL循环:
<代码>声明@itemnumber int -定义需要循环的次数 声明@tagint int -定义标志字段,用于结束循环 设置@tagint=1 选择@itemnumber=count(不同的创造者)从Demo_TestTable isnull(造物主,“)& lt;在” CreatDate DATEDIFF(天,获取当前日期())& lt; 1 如果(@itemnumber> 0) 开始 而@tagint<=@itemnumber 开始 等待延迟“00:00:01”——每隔一秒再执行可用参数变量替换 更新Demo_TestTable设置CreatDate=获取当前日期()造物主=( 选择的创造者( 选择造物主,ROW_NUMBER()/(订单由造物主)RowID Demo_TestTable中 isnull(造物主)& lt;在“和DATEDIFF(天,CreatDate,获取当前日期())& lt; 1组由造物主 为多) TableA.RowID=@tagint ) 设置@tagint=@tagint + 1 结束 代码> >之前结束该循环(游标循环及类似为的循环)