sp_help_jobserver (Transact-SQL)
适用于:SQL Server
为给定的作业返回有关服务器的信息。
语法
sp_help_jobserver
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
[ , [ @show_last_run_details = ] show_last_run_details ]
[ ; ]
参数
[ @job_id = ] 'job_id'
要为其返回信息的作业的标识号。 @job_id是 uniqueidentifier,默认值为 NULL
.
必须指定@job_id或@job_name,但不能指定这两者。
[ @job_name = ] N'job_name'
要为其返回信息的作业的名称。 @job_name为 sysname,默认值为 NULL
.
必须指定@job_id或@job_name,但不能指定这两者。
[ @show_last_run_details = ] show_last_run_details
上次运行执行信息是否是结果集的一部分。 @show_last_run_details为 tinyint,默认值为 0
.
0
不包含上次运行信息。1
包括上次运行信息。
返回代码值
0
(成功)或 1
(失败)。
结果集
列名称 | 数据类型 | 说明 |
---|---|---|
server_id |
int | 目标服务器的标识号。 |
server_name |
nvarchar(30) | 目标服务器的计算机名称。 |
enlist_date |
datetime | 将目标服务器登记到主服务器的日期。 |
last_poll_date |
datetime | 目标服务器上一次轮询主服务器的日期。 |
如果在sp_help_jobserver
设置为@show_last_run_details1
的情况下执行,则结果集具有这些额外的列。
列名称 | 数据类型 | 说明 |
---|---|---|
last_run_date |
int | 作业上一次在此目标服务器上开始执行的日期。 |
last_run_time |
int | 作业上一次在此服务器上开始执行的时间。 |
last_run_duration |
int | 作业上一次在此目标服务器上运行所持续的时间(以秒为单位)。 |
last_outcome_message |
nvarchar(1024) | 说明作业上一次运行的结果。 |
last_run_outcome |
int | 作业上一次在此服务器上运行的结果:0 = 失败1 = Succeeded3 = 已取消5 = 未知 |
权限
此存储过程由 db_owner 角色拥有。 你可以为任何用户授予 EXECUTE
权限,但这些权限可能会在 SQL Server 升级期间被重写。
其他用户必须被授予数据库中以下SQL Server 代理固定数据库角色msdb
之一:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
有关这些角色的权限的详细信息,请参阅 SQL Server 代理固定数据库角色。
SQLAgentUserRole 的成员只能查看其拥有的作业的信息。
示例
以下示例返回有关 NightlyBackups
作业的信息,其中包括上一次运行的信息。
USE msdb;
GO
EXEC dbo.sp_help_jobserver
@job_name = N'NightlyBackups',
@show_last_run_details = 1;
GO