是否有一种可靠的方法来确定给定sql代理在给定时间范围内的运行时间?
我有一个Microsoft.SqlServer.Management.Smo.Agent.Job
对象,但希望避免重新创建逻辑以根据其计划计算运行时间。我希望有一些内置的功能。
答案 0 :(得分:1)
不,不幸的是没有。当你的工作有多个时间表时,检测到这一点会更复杂。
但是,对于只有1个时间表的简单情况,我认为您可以执行以下操作:
NextRunDate
ActiveStartDate
设置为下一个运行日期。 ActiveStartDate
设置为其初始值。 创建作业时,您只能执行此操作一次,并保留结果。因此,每次需要评估运行时间时,都可以消除修改作业的风险(因为更改ActiveStartDate实际上会修改计划)。