sql存储过程循环while
declare @mycounter int
set @mycounter = 0 /*设置变量*/
while (@mycounter begin
waitfor delay '000:00:10' /*延迟时间10秒*/
insert into time_by_day
(time_id, the_date, the_year, month_of_year, quarter, day_of_month)
select top 1 time_id + 1 as time_id, the_date + 1 as the_date, year(the_date + 1)
as the_year, month(the_date + 1) as month_of_year, { fn quarter(the_date + 1)
} as quarter, day(the_date + 1) as day_of_month
from time_by_day
order by time_id descset @mycounter = @mycounter + 1
end
用游标吧
declare @a int,@b int
declare ccc cursor for select * from test where id>@id
open ccc
fetch next from ccc into @a,@b
while (@@fetch_status=0)
begin
.......
end
close ccc
declare ccc(这个操作看看别的系统存储过程怎么写的 记不太清了 每次都是copy的)大概就是这样 不知道语法有没有错误 最近一段时间没用sqlserver了 看看系统存储过程就能明白怎么用cursor了
推荐阅读
-
SQL Server存储过程生成insert语句实例
-
为什么SQL2005在新建复制找不到存储过程提示错误:2812 的解决方法
-
参考sql2012存储过程写的统计所有用户表尺寸大小的示例
-
sql获取存储过程返回数据过程解析
-
sql2005数据导出方法(使用存储过程导出数据为脚本)
-
如何在SQL SERVER 2005存储过程中,使用循环语句
-
SQL Server 2005通用分页存储过程及多表联接应用
-
SQL Server中查找包含某个文本的存储过程
-
自定义存储过程的Sql语句
-
SQL Server 存储过程 数组参数 (How to pass an array into a SQL Server stored procedure)