我有一个存储过程返回一些结果集。我已经创建了一个表,并在该表中插入了存储过程的结果。现在我想要的是,我想每30分钟刷新一次存储过程和表。
Here is my stored proc.,
USE [my_DB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[sp_1]
@Week int = 1,
@Year int = 2014
AS
BEGIN
declare @current_week int
set @current_week = datepart (week, getdate())
while @Week <= @current_week
begin
truncate table [my_DB].[dbo].[tb_name]
insert into [my_DB].[dbo].[tb_name]
exec sp_2 @Week,@Year
select @Week as Week_Number,* from [my_DB].[dbo].[tb_name] (nolock)
set @Week = @Week + 1
end
END
有什么想法可以实现这一目标吗?一个例子会更有帮助。
谢谢。
最好的解决方案是配置一个每30分钟运行一次的Job,但是您也可以执行以下操作:
Salto:
Exec sp_1;
Waitfor Delay '00:30:00';
Goto Salto;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句