sql server作业计划的结束日期是包含还是排除

时间:2011-03-25 12:25:17

标签: sql-server sql-server-2005 scheduling jobs sql-server-agent

我有一个日程安排,每天做一次,每隔两小时一次。我想为这个时间表设定一个结束日期,但我想知道它是包容性的还是排他性的。换句话说,如果我在3月26日设定结束日期,今天将是它运行的最后一天,或明天(今天是25月3日)。

2 个答案:

答案 0 :(得分:11)

如果您使用sysschedules_localserver_view视图查看msdb数据库,那么您可以看到日程安排以及结束日期(active_end_date = 3月26日)和结束时间(活动_end_time),这很可能是235959,这意味着任何安排在3月26日结束的工作将在3月26日开始,第一天“错过”将是第27天。我可以从痛苦的经验中确认这一点,即在“作业 - 计划”对话框中设置结束日期,作业将在该日期运行。所以结束日期是包含的。

答案 1 :(得分:1)

还需要考虑结束时间。任何在结束日期/时间之后运行的作业都不会运行。所以它实际上是独家的。

来自MSDN

  

自动运行SQL Server代理   禁用不再有的计划   当前。如果您编辑计划   在它被SQL禁用之后   服务器代理,您必须明确   重新启用它。计划被禁用   如果:

     

他们被定义为经常性地运行   时间表,结束日期已过。

对于结束日期,还有早期版本的SQL Server some problems