我正在尝试执行每30秒执行一次的简单SQL代码

时间:2018-12-12 05:26:04

标签: sql sql-server-2008 sql-server-2012

declare @timeToRun nvarchar(50);
declare @t1 int;

set @t1=10;
set @timeToRun = right(rtrim(CONVERT(VARCHAR(70), GETDATE(), 108)),2)

if @timeToRun = @t1 
begin
--   waitfor time @timeToRun
   begin
       print 'Hello';
   end
end

2 个答案:

答案 0 :(得分:0)

需要重复运行的SQL Server代码最好使用SQL Server代理作业来完成。 Here is the documentation to create a SQL Server Agent job。简要地说,在SQL Server Management Studio中执行此操作的过程是:

  1. 在“对象资源管理器”中,单击加号以在要创建SQL Server代理作业的服务器上展开。

  2. 单击加号以展开SQL Server代理。

  3. 右键单击Jobs文件夹,然后选择“新建作业...”。

  4. 在“新建作业”对话框的“常规”页面上,修改作业的常规属性。

  5. 在“步骤”页面上,组织作业步骤。

  6. 在“计划”页面上,为作业安排计划。

  7. 在“警报”页面上,组织作业的警报。

  8. 在“通知”页面上,设置Microsoft SQL Server代理在作业完成时执行的操作。

  9. 在“目标”页面上,管理作业的目标服务器。

  10. 完成后,单击“确定”。

答案 1 :(得分:0)

我发现可以正常工作的代码,使用SQL SERVER EXPRESS EDITION的问题白名单,它不提供SQL AGENT,使用SQL SERVER STANDARD EDITION可以成功执行相同的查询。