一个接一个地调度SQL作业

时间:2015-06-23 11:11:50

标签: sql sql-server sql-server-2008 sql-server-2008-r2

我同时有两份工作让我们说a和b .... 我需要按顺序运行作业

first = ----- a

第二= ---- B'/ P>

a和b调度时间应该不同,以便我不能在单个作业中使用它们 当我安排它们并行运行时,我需要一系列执行。

2 个答案:

答案 0 :(得分:1)

  • 每30分钟完成一项工作,从00:15开始执行任务A
  • 其他工作每30分钟执行任务A,然后B执行00:00

答案 1 :(得分:0)

如果实际要求是两个单独的活动不应同时发生,但它们具有完全不同的计划要求,您可以使用应用程序锁实现此目的。< / p>

这将要求每个作业的所有活动都在单个存储过程中发生(或者,以某种其他方式,强制使用单个数据库会话)。

在每个活动开始时,代码会调用sp_getapplock,例如:

EXEC sp_getapplock N'D1852F12-F213-4BD3-A87C-10FB56506EF8',
                   N'Exclusive',
                   N'Session'

(理想情况下,之后使用sp_releaseapplock

释放锁定