DECLARE @RC int DECLARE @statTime datetime DECLARE @endTime datetime SELECT @statTime = '2008-06-22 00:00:00.000' SELECT @endTime = '2008-06-22 01:00:00.000' while @statTime < '2008-06-27 00:00:00.000' begin EXEC @RC = [yp_SMS_Stat].[dbo].[ypSMSStat_MoMt_Prov_By_Hour_para] @statTime, @endTime DECLARE @PrnLine nvarchar(4000) PRINT '存储过程: yp_SMS_Stat.dbo.ypSMSStat_MoMt_Prov_By_Hour_para' SELECT @PrnLine = ' 返回代码 = ' + CONVERT(nvarchar, @RC) PRINT @PrnLine set @statTime = dateadd(hh,1,@statTime) end
语法:
while condition
begin
some action
end
今天数据库发现统计数据有错,修改存储过程后,需要重新统计数据,发现也可以这样用 while循环 执行存储过程。