sp_update_proxy (Transact-SQL)

更改现有代理的属性。

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

语法

sp_update_proxy 
    [ @proxy_id = ] id,
    [ @proxy_name = ] 'proxy_name',
    [ @credential_name = ] 'credential_name' ,
    [ @credential_id = ] credential_id ,
    [ @new_name = ] 'new_name' ,
    [ @enabled = ] is_enabled ,
    [ @description = ] 'description'

参数

  • [ @proxy_id = ] id
    要更改的代理的代理标识号。proxy_id 的数据类型为 int,默认值为 NULL。

  • [ @proxy_name = ] 'proxy_name'
    要更改的代理的名称。proxy_name 的数据类型为 sysname,默认值为 NULL。

  • [ @credential_name = ] 'credential_name'
    代理的新凭据的名称。credential_name 的数据类型为 sysname,默认值为 NULL。可以指定 credential_name 或 credential_id。

  • [ @credential_id = ] credential_id
    代理的新凭据的标识号。credential_id 的数据类型为 int,默认值为 NULL。可以指定 credential_name 或 credential_id。

  • [ @new_name= ] 'new_name'
    代理的新名称。new_name 的数据类型为 sysname,默认值为 NULL。如果提供了此参数,则过程将代理名称更改为 new_name。当此参数为 NULL 时,代理名称保持不变。

  • [ @enabled = ] is_enabled
    是否启用代理。is_enabled 标志的数据类型为 tinyint,默认值为 NULL。当 is_enabled 为 0 时,将不启用代理,并且作业步骤无法使用代理。当此参数为 NULL 时,代理的状态保持不变。

  • [ @description = ] 'description'
    代理的新说明。description 的数据类型为 nvarchar(512),默认值为 NULL。当此参数为 NULL 时,代理的说明保持不变。

返回代码值

0(成功)或 1(失败)

注释

必须指定 @proxy_name@proxy_id。如果同时指定这两个参数,这两个参数必须引用相同的代理,否则存储过程会失败。

必须指定 @credential_name@credential_id 才能更改代理的凭据。如果两个参数均被指定,则它们必须引用相同的凭据,否则存储过程将失败。

此过程将更改代理,但不更改对代理的访问权限。若要更改对代理的访问权限,请使用 sp_grant_login_to_proxysp_revoke_login_from_proxy

权限

只有 sysadmin 固定安全角色的成员才可以执行此过程。

示例

以下示例将代理 Catalog application proxy 的 enabled 值设置为 0。

USE msdb ;
GO

EXEC dbo.sp_update_proxy
    @proxy_name = 'Catalog application proxy',
    @enabled = 0;
GO