我必须手动计算工作的下一个运行日期,你能帮我吗?
最佳答案
要获取作业的下一个运行日期,您可以使用 sysschedules和 sysjobschedules表格
检查表 sysjobschedules 中的 next_run_date 和 next_runtime 列
next_run_date int Next date on which the job is scheduled to run. The date is formatted YYYYMMDD.
next_run_time int Time at which the job is scheduled to run. The time is formatted HHMMSS, and uses a 24-hour clock.
查看此脚本
Select sched.*,jobsched.* FROM msdb.dbo.sysschedules AS sched
inner Join msdb.dbo.sysjobschedules AS jobsched ON sched.schedule_id = jobsched.schedule_id
或者您可以使用 msdb.dbo.sp_help_jobschedule存储过程,以获取相同的信息。
更新
如果您需要手动计算 next_run_date,您必须检查 sysschedules表并查看 freq_interval、freq_subday_type、freq_subday_interval、freq_relative_interval、freq_recurrence_factor、active_start_date、active_start_time 列来确定公式。
检查 link查看使用示例。
关于sql - SQL 如何计算作业计划的 NEXT_RUN_DATE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2398921/