sp_change_subscription_properties (Transact-SQL)

适用于: SQL Server Azure SQL 托管实例

更新请求订阅信息。 此存储过程在订阅服务器的订阅数据库中执行。

Transact-SQL 语法约定

语法

sp_change_subscription_properties
    [ @publisher = ] N'publisher'
    , [ @publisher_db = ] N'publisher_db'
    , [ @publication = ] N'publication'
    , [ @property = ] N'property'
    , [ @value = ] N'value'
    [ , [ @publication_type = ] publication_type ]
[ ; ]

参数

[ @publisher = ] N'publisher'

发布服务器的名称。 @publisher为 sysname,无默认值。

[ @publisher_db = ] N'publisher_db'

发布服务器数据库的名称。 @publisher_dbsysname,无默认值。

[ @publication = ] N'publication'

发布的名称。 @publicationsysname,无默认值。

[ @property = ] N'property'

要更改的属性。 @property为 sysname,没有默认值。

[ @value = ] N'value'

属性的新值。 @value为 nvarchar(1000),没有默认值。

[ @publication_type = ] publication_type

指定发布的复制类型。 @publication_type为 int,默认值NULL为 ,可以是以下值之一:

Publication type
0 事务性
1 快照
2 合并
NULL(默认值) 发布类型是由复制决定的。 因为存储过程必须浏览多个表,因此使用此选项时的执行速度要比提供了精确发布类型时的速度慢。

下表说明项目的属性和这些属性的值。

属性 价值 说明
alt_snapshot_folder 指定快照的备用文件夹的位置。 如果设置为 NULL/>,则从发布服务器指定的默认位置选取快照文件。
distrib_job_login 用来运行代理的 Windows 帐户的登录名。
distrib_job_password 用来运行代理的 Windows 帐户的密码。
distributor_login 分发服务器登录名。
distributor_password 分发服务器密码。
distributor_security_mode 1 连接分发服务器时,使用 Windows 身份验证。
0 连接到分发服务器时使用 SQL Server 身份验证。
dts_package_name 指定 SQL Server 2000 Data Transformation Services (DTS) 包的名称。 仅当发布为事务发布或快照发布时才能指定该值。
dts_package_password 指定包上的密码。 dts_package_passwordsysname ,默认值 NULL为 ,指定密码属性保持不变。 仅当发布为事务发布或快照发布时才能指定该值。

注意: DTS 包必须具有密码。
dts_package_location 存储 DTS 包的位置。 仅当发布为事务发布或快照发布时才能指定该值。
dynamic_snapshot_location 指定保存快照文件的文件夹的路径。 仅当发布为合并发布时才能指定该值。
ftp_address 此参数已弃用,并维护脚本的向后兼容性。
ftp_login 此参数已弃用,并维护脚本的向后兼容性。
ftp_password 此参数已弃用,并维护脚本的向后兼容性。
ftp_port 此参数已弃用,并维护脚本的向后兼容性。
hostname 连接到发布服务器时使用的主机名称。
internet_login 在使用基本身份验证连接到承载 Web 同步的 Web 服务器时,合并代理所使用的登录名。
internet_password 在使用基本身份验证连接到承载 Web 同步的 Web 服务器时,合并代理使用的密码。
internet_security_mode 1 使用 Windows 集成身份验证进行 Web 同步。 建议您将基本身份验证与 Web 同步结合使用。 有关详细信息,请参阅 Configure Web Synchronization
0 使用基本身份验证进行 Web 同步。

注意: Web 同步需要与 Web 服务器的 TLS 连接。
internet_timeout Web 同步请求过期之前的时间长度(秒)。
internet_url 表示 Web 同步复制侦听器位置的 URL。
merge_job_login 用来运行代理的 Windows 帐户的登录名。
merge_job_password 用来运行代理的 Windows 帐户的密码。
publisher_login 发布者登录名。 仅对合并发布的订阅支持更改 publisher_login
publisher_password 发布者密码。 仅对合并发布的订阅支持更改 publisher_password
publisher_security_mode 1 连接发布服务器时,使用 Windows 身份验证。 仅对合并发布的订阅支持更改 publisher_security_mode
0 连接到发布服务器时使用 SQL Server 身份验证。
use_ftp true 若要检索快照,请使用 FTP 而不是常规协议。
false 使用常规协议来检索快照。
use_web_sync true 启用 Web 同步。
false 禁用 Web 同步。
working_directory 使用文件传输协议 (FTP) 传输快照文件时,用于临时存储发布的数据和架构文件的工作目录的名称。

返回代码值

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

注解

sp_change_subscription_properties 用于所有类型的复制。

sp_change_subscription_properties 用于请求订阅。

对于 Oracle 发布服务器,将忽略@publisher_db的值,因为 Oracle 仅允许每个服务器的一个数据库。

权限

只有 sysadmin 固定服务器角色的成员db_owner固定数据库角色的成员才能执行sp_change_subscription_properties