sp_help_downloadlist (Transact-SQL)

针对所提供的作业,列出 sysdownloadlist 系统表中的所有行,或者在未指定作业的情况下列出所有行。

主题链接图标Transact-SQL 语法约定

语法

sp_help_downloadlist { [ @job_id = ] job_id | [ @job_name = ] 'job_name' } 
     [ , [ @operation = ] 'operation' ] 
     [ , [ @object_type = ] 'object_type' ] 
     [ , [ @object_name = ] 'object_name' ] 
     [ , [ @target_server = ] 'target_server' ] 
     [ , [ @has_error = ] has_error ] 
     [ , [ @status = ] status ] 
     [ , [ @date_posted = ] date_posted ]

参数

  • [ @job_id= ] job_id
    要为其返回信息的作业的标识号。job_id 的数据类型为 uniqueidentifier,默认值为 NULL。

  • [ @job_name= ] 'job_name'
    作业的名称。job_name 的数据类型为 sysname,默认值为 NULL。

    注意注意

    必须指定 job_id 或 job_name,但不能两个都指定。

  • [ @operation= ] 'operation'
    指定作业的有效操作。operation 的数据类型为 varchar(64),默认值为 NULL,可以是下列值之一:

    说明

    DEFECT

    服务器操作,请求目标服务器脱离 Master SQLServerAgent 服务。

    DELETE

    作业操作,删除整个作业。

    INSERT

    作业操作,插入整个作业或者刷新现有作业。如果可用,此操作将包含所有作业步骤与作业计划。

    RE-ENLIST

    服务器操作,使目标服务器再次将其登记信息(包括轮询间隔和时区)发送到多服务器域。目标服务器还将重新下载 MSXOperator 详细信息。

    SET-POLL

    服务器操作,设置目标服务器轮询多服务器域的间隔(以秒为单位)。如果指定了 value,则将其解释为所需的间隔值,可以是从 1028,800 的一个值。

    START

    作业操作,请求开始执行作业。

    STOP

    作业操作,请求停止执行作业。

    SYNC-TIME

    服务器作业,使目标服务器将其系统时钟与多服务器域时钟同步。因为此操作的开销很大,所以只能有限制地偶尔执行。

    UPDATE

    作业操作,仅更新作业的 sysjobs 信息,不更新作业步骤或作业计划。由 sp_update_job 自动调用。

  • [ @object_type= ] 'object_type'
    指定作业的对象类型。object_type 的数据类型为 varchar(64),默认值为 NULL。object_type 可以是 JOB 或 SERVER。有关有效 object_type值的详细信息,请参阅sp_add_category (Transact-SQL)

  • [ @object_name= ] 'object_name'
    对象的名称。object_name 的数据类型为 sysname,默认值为 NULL。如果 object_type 为 JOB,则 object_name为作业名称。如果 object_type为 SERVER,则 object_name为服务器名称。

  • [ @target_server= ] 'target_server'
    目标服务器的名称。target_server 的数据类型为 nvarchar(128),默认值为 NULL。

  • [ @has_error= ] has_error
    作业是否应确认错误。has_error 的数据类型为 tinyint,默认值为 NULL,指示不确认错误。1 指示应确认所有错误。

  • [ @status= ] status
    作业的状态。status 的数据类型为 tinyint,默认值为 NULL。

  • [ @date_posted= ] date_posted
    日期和时间,在指定的日期和时间或之后建立的所有项都应包括在结果集中。date_posted 的数据类型为 datetime,默认值为 NULL。

返回代码值

0(成功)或 1(失败)

结果集

列名

数据类型

说明

instance_id

int

指令的唯一整数标识号。

source_server

nvarchar(30)

发出指令的服务器的计算机名。在 MicrosoftSQL Server 7.0 版中,始终是主 (MSX) 服务器的计算机名。

operation_code

nvarchar(4000)

指令的操作代码。

object_name

sysname

受指令影响的对象。

object_id

uniqueidentifier

受指令影响的对象的标识号(作业对象为 job_id,服务器对象为 0x00),或特定于 operation_code 的数据值。

target_server

nvarchar(30)

下载此指令的目标服务器。

error_message

nvarchar(1024)

目标服务器处理此指令时,遇到问题而发出的错误消息(如果有)。

注意注意
任何错误消息都将阻止目标服务器的所有下载继续进行。

date_posted

datetime

指令发布到表的日期。

date_downloaded

datetime

目标服务器下载指令的日期。

status

tinyint

作业的状态:

0 = 尚未下载。

1 = 成功下载

权限

默认情况下授予 sysadmin 固定服务器角色的成员执行此过程的权限。

示例

以下示例将列出 NightlyBackups 作业的 sysdownloadlist 中的行。

USE msdb ;
GO

EXEC dbo.sp_help_downloadlist
    @job_name = N'NightlyBackups',
    @operation = N'UPDATE', 
    @object_type = N'JOB', 
    @object_name = N'NightlyBackups',
    @target_server = N'SEATTLE2', 
    @has_error = 1, 
    @status = NULL, 
    @date_posted = NULL ;
GO