sp_help_jobschedule (Transact-SQL)

适用于:SQL Server

返回有关SQL Server Management Studio用于执行自动化活动的作业计划的信息。

Transact-SQL 语法约定

语法

  
sp_help_jobschedule { [ @job_id = ] job_id | [ @job_name = ] 'job_name' }  
     [ , [ @schedule_name = ] 'schedule_name' ]  
     [ , [ @schedule_id = ] schedule_id ]  
     [ , [ @include_description = ] include_description ]  

参数

[ @job_id = ] job_id 作业标识号。 job_iduniqueidentifier,默认值为 NULL。

[ @job_name = ] 'job_name' 作业的名称。 job_namesysname,默认值为 NULL。

注意

必须指定 job_idjob_name ,但不能同时指定两者。

[ @schedule_name = ] 'schedule_name' 作业的计划项的名称。 schedule_namesysname,默认值为 NULL。

[ @schedule_id = ] schedule_id 作业的计划项的标识号。 schedule_idint,默认值为 NULL。

[ @include_description = ] include_description 指定是否在结果集中包括计划的说明。 include_description,默认值为 0。 当 include_description0 时,结果集中不包含计划的说明。 当 include_description1 时,计划的说明将包含在结果集中。

返回代码值

0(成功)或 1(失败)

结果集

列名称 数据类型 说明
schedule_id int 计划标识号。
schedule_name sysname 计划名称。
enabled int 是否启用计划 (1) (0) 。
freq_type int 指示何时执行作业的值。

1 = 一次

4 = 每日

8 = 每周

16 = 每月

32 = 每月,相对于 freq_interval

64 = 在 SQLServerAgent 服务启动时运行。
freq_interval int 执行作业的天数。 该值取决于 freq_type 的值。 有关详细信息,请参阅 sp_add_schedule (Transact-SQL)
freq_subday_type int freq_subday_interval单位。 有关详细信息,请参阅 sp_add_schedule (Transact-SQL)
freq_subday_interval int 每次执行作业之间发生的 freq_subday_type 周期数。 有关详细信息,请参阅 sp_add_schedule (Transact-SQL)
freq_relative_interval int 计划 作业在每个月 freq_interval的发生次数。 有关详细信息,请参阅 sp_add_schedule (Transact-SQL)
freq_recurrence_factor int 作业的已计划执行日期之间的间隔月数。
active_start_date int 激活计划的日期。
active_end_date int 计划的结束日期。
active_start_time int 计划开始的时间。
active_end_time int 计划结束的时间。
date_created datetime 创建计划的日期。
schedule_description nvarchar(4000) 派生自 msdb.dbo.sysschedules 中的值的计划的英文说明。 当 include_description0 时,此列包含说明未请求说明的文本。
next_run_date int 计划下一次引发作业运行的日期。
next_run_time int 计划下一次引发作业运行的时间。
schedule_uid uniqueidentifier 计划的标识符。
job_count int 返回的作业数。

注意

sp_help_jobschedule** 从 msdb 中的 dbo.sysjobschedulesdbo.sysschedules 系统表中返回值。 sysjobschedule 每 20 分钟更新一次。 这可能会影响此存储过程返回的值。

备注

sp_help_jobschedule的参数只能在某些组合中使用。 如果指定 了schedule_id ,则不能指定 job_idjob_name 。 否则, job_idjob_name 参数可与 schedule_name 一起使用。

权限

要求具有 sysadmin 固定服务器角色的成员身份。 其他用户必须被授予 msdb 数据库中下列 SQL Server 代理固定数据库角色的权限之一:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

有关这些角色的权限的详细信息,请参阅 SQL Server 代理固定数据库角色

SQLAgentUserRole 的成员只能查看其拥有的作业计划的属性。

示例

A. 返回特定作业的作业计划

以下示例返回名为 BackupDatabase 的作业的计划信息。

USE msdb ;  
GO  
  
EXEC dbo.sp_help_jobschedule  
    @job_name = N'BackupDatabase' ;  
GO  

B. 返回特定计划的作业计划

下面的示例返回名为 NightlyJobs 的计划和名为 RunReports 的作业的信息。

USE msdb ;  
GO  
  
EXEC dbo.sp_help_jobschedule   
    @job_name = N'RunReports',  
    @schedule_name = N'NightlyJobs' ;  
GO  

C. 返回特定计划的作业计划和计划说明

下面的示例返回名为 NightlyJobs 的计划和名为 RunReports 的作业的信息。 返回的结果集包括对计划的说明。

USE msdb ;  
GO  
  
EXEC dbo.sp_help_jobschedule  
    @job_name = N'RunReports',  
    @schedule_name = N'NightlyJobs',  
    @include_description = 1 ;  
GO  

另请参阅

sp_add_schedule (Transact-SQL)
sp_delete_schedule (Transact-SQL)
sp_update_schedule (Transact-SQL)
系统存储过程 (Transact-SQL)