以编程方式更改SQL代理作业计划时间不起作用

时间:2013-10-02 09:52:00

标签: sql-server stored-procedures jobs schedule sql-agent-job

我有一个SQL代理作业,应该在提供的时间每天被解雇。如果我从Management Studio手动更改计划时间,它可以正常工作,但我需要使用存储过程更改时间,如下所示:

update s set
s.active_start_time = @time
from msdb..sysjobs j
left join msdb..sysjobschedules js on j.job_id = js.job_id
left join msdb..sysschedules s on js.schedule_id = s.schedule_id
where j.name = 'MyJobName'

猜猜是什么?运行此类过程后,当我在Management Studio中检查预定时间时,它已正确更新,但显然Job忽略了这一点。

我甚至发现,这个Job保留了手动设置的旧计划时间,并使用该计划运行 - 如果我例如手动将时间设置为10:45 AM,然后使用过程快速将时间更改为10 :55 AM,即使Management Studio中的计划时间看起来更新,Job仍然会在10:45运行......

任何想法可能出错?

0 个答案:

没有答案