Sql server 更改SQL代理作业计划时间程序不';行不通
我有一个SQL代理工作,应该每天在规定的时间被解雇。如果我从Management Studio手动更改计划时间,它可以正常工作,但我需要使用存储过程更改时间,如下所示:Sql server 更改SQL代理作业计划时间程序不';行不通,sql-server,stored-procedures,jobs,schedule,sql-agent-job,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.schedul
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'
你猜怎么着?在运行这样的过程之后,当我在ManagementStudio中检查计划时间时,它被正确地更新了,但显然Job忽略了这一点
我甚至发现,此作业保留了手动设置的旧计划时间,并使用该时间运行-例如,如果我手动将时间设置为上午10:45,然后快速将时间使用过程更改为上午10:55,即使Management Studio内的计划时间看起来要更新,作业仍将在10:45运行
有什么想法吗?不要直接更新系统表使用提供的存储过程来完成工作,请查看此链接,它确实有帮助,谢谢Namphibian!