sp_update_proxy (Transact-SQL)

适用于:SQL Server

更改现有代理的属性。

Transact-SQL 语法约定

语法

sp_update_proxy
    [ [ @proxy_id = ] proxy_id ]
    [ , [ @proxy_name = ] N'proxy_name' ]
    [ , [ @credential_name = ] N'credential_name' ]
    [ , [ @credential_id = ] credential_id ]
    [ , [ @new_name = ] N'new_name' ]
    [ , [ @enabled = ] enabled ]
    [ , [ @description = ] N'description' ]
[ ; ]

参数

[ @proxy_id = ] proxy_id

要更改的代理的代理标识号。 @proxy_id为 int,默认值为 NULL.

[ @proxy_name = ] N'proxy_name'

要更改的代理的名称。 @proxy_name为 sysname,默认值为 NULL.

[ @credential_name = ] N'credential_name'

代理的新凭据的名称。 @credential_name为 sysname,默认值为 NULL. 必须指定@credential_name@credential_id

[ @credential_id = ] credential_id

代理的新凭据的标识号。 @credential_id为 int,默认值为 NULL. 必须指定@credential_name@credential_id

[ @new_name = ] N'new_name'

代理的新名称。 @new_name为 sysname,默认值为 NULL. 提供后,该过程会将代理的名称更改为 @new_name。 如果此参数为 NULL此参数,则代理的名称保持不变。

[ @enabled = ] enabled

指定是否启用代理。 @enabled为 tinyint,默认值为 NULL. 当@enabled0时,代理未启用,作业步骤不能使用。 当此参数为 NULL此参数时,代理的状态保持不变。

[ @description = ] N'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