sp_help_jobs_in_schedule (Transact-SQL)

适用范围:SQL Server

返回有关附加了特定计划的作业的信息。

Transact-SQL 语法约定

语法

sp_help_jobs_in_schedule
    [ [ @schedule_name = ] N'schedule_name' ]
    [ , [ @schedule_id = ] schedule_id ]
[ ; ]

参数

[ @schedule_id = ] schedule_id

将列出其信息的计划的标识符。 @schedule_id为 int,默认值为 NULL.

可以指定@schedule_id@schedule_name

[ @schedule_name = ] N'schedule_name'

将列出其信息的计划的名称。 @schedule_name为 sysname,默认值为 NULL.

可以指定@schedule_id@schedule_name

返回代码值

0(成功)或 1(失败)。

结果集

返回以下结果集:

列名称 数据类型 描述
job_id uniqueidentifier 作业的唯一 ID。
originating_server nvarchar(30) 作业来自的服务器的名称。
name sysname 作业的名称。
enabled tinyint 指示作业是否已启用,以便它可以执行。
description nvarchar(512) 对作业的说明。
start_step_id int 执行作业的起始步骤的 ID。
category sysname 作业类别。
owner sysname 作业所有者。
notify_level_eventlog int 位掩码,它表示在何种情况下通知事件应记录到 Microsoft Windows 应用程序日志中。 可以是下列值之一:

0 = 从不
1 = 作业成功时
2 = 作业失败时
3 = 每当作业完成时(无论作业结果如何)
notify_level_email int 位掩码,它指示当作业完成时,在什么情况下应该发送一个通知电子邮件。 可能的值与用于 notify_level_eventlog.
notify_level_netsend int 位掩码,它表示当作业完成时,在什么情况下应该发送一个网络消息。 可能的值与用于 notify_level_eventlog.
notify_level_page int 位掩码,它表示当作业完成时,在什么情况下应该发送一个呼叫。 可能的值与用于 notify_level_eventlog.
notify_email_operator sysname 被通知的操作员的电子邮件名称。
notify_netsend_operator sysname 在发送网络消息时所使用的计算机或用户的名称。
notify_page_operator sysname 在发送寻呼时所使用的计算机或用户的名称。
delete_level int 位掩码,它表示当作业完成时,在什么情况下应该删除作业。 可能的值与用于 notify_level_eventlog.
date_created datetime 作业的创建日期。
date_modified datetime 上次修改作业的日期。
version_number int 作业的版本(每次修改作业时都自动对其进行更新)。
last_run_date int 作业上一次开始执行的日期。
last_run_time int 作业上一次开始执行的时间。
last_run_outcome int 作业上一次运行时所得到的结果:

0 = 失败
1 = Succeeded
3 = 已取消
5 = 未知
next_run_date int 计划作业下一次运行的日期。
next_run_time int 计划作业下一次运行的时间。
next_run_schedule_id int 下一个运行的计划的标识号。
current_execution_status int 当前执行状态。
current_execution_step sysname 作业中当前的执行步骤。
current_retry_attempt int 如果作业正在运行且步骤已重试,则此值为当前重试尝试。
has_step int 作业具有的作业步骤数。
has_schedule int 作业具有的作业计划数。
has_target int 作业具有的目标服务器数。
type int 作业类型:

1 = 本地作业。
2 = 多服务器作业。
0 = 作业没有目标服务器。

注解

此过程列出有关附加到指定计划的作业的信息。

权限

可以授予 EXECUTE 此过程的权限,但在 SQL Server 升级期间可能会重写这些权限。

其他用户必须被授予数据库中以下SQL Server 代理固定数据库角色msdb之一:

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

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

SQLAgentUserRole 的成员只能查看其拥有的作业的状态。

示例

以下示例列出附加到 NightlyJobs 计划的作业。

USE msdb;
GO

EXEC sp_help_jobs_in_schedule
    @schedule_name = N'NightlyJobs';
GO