sp_changesubscription (Transact-SQL)
对于排队更新事务复制所涉及的快照或者事务推送订阅,或所涉及的请求订阅,更改其属性。 若要更改所有其他请求订阅类型的属性,请使用sp_change_subscription_properties(Transact-SQL)。 发布服务器上对发布数据库执行sp_changesubscription。
重要
使用远程分发服务器配置发布服务器时,为所有参数提供的值(包括 job_login 和 job_password)都会以纯文本方式发送到该分发服务器。 在执行此存储过程之前,应该对发布服务器及其远程分发服务器之间的连接进行加密。 有关详细信息,请参阅启用数据库引擎的加密连接(SQL Server 配置管理器)。
语法
sp_changesubscription [ @publication = ] 'publication'
, [ @article = ] 'article'
, [ @subscriber = ] 'subscriber'
, [ @destination_db = ] 'destination_db'
, [ @property = ] 'property'
, [ @value = ] 'value'
[ , [ @publisher = ] 'publisher' ]
参数
[ @publication = ] 'publication'
要更改的发布的名称。 publication为 sysname,无默认值
[ @article = ] 'article'
要更改的项目的名称。 项目 为 sysname,没有默认值。
[ @subscriber = ] 'subscriber'
订阅服务器的名称。 订阅服务器 为 sysname,无默认值。
[ @destination_db = ] 'destination_db'
订阅数据库的名称。 destination_db 为 sysname,无默认值。
[ @property = ] 'property'
要更改给定订阅的属性。 属性 为 nvarchar(30),可以是表中的值之一。
[ @value = ] 'value'
指定 属性的新值。 值为 nvarchar(4000),可以是表中的值之一。
属性 | 价值 | 说明 |
---|---|---|
distrib_job_login | 登录代理所依据的 Microsoft Windows 帐户。 | |
distrib_job_password | 用来运行代理的 Windows 帐户的密码。 | |
subscriber_catalog | 在与 OLE DB 访问接口建立连接时要使用的目录。 此属性仅适用于非 Microsoft SQL Server 订阅服务器。 | |
subscriber_datasource | OLE DB 访问接口识别的数据源的名称。 此属性仅适用于非 SQL Server 订阅服务器。 | |
subscriber_location | OLE DB 访问接口识别的数据库的位置。 此属性仅适用于非 SQL Server 订阅服务器。 | |
subscriber_login | 在订阅服务器上的登录名。 | |
subscriber_password | 提供的登录名的强密码。 | |
subscriber_security_mode | 1 | 连接订阅服务器时,使用 Windows 身份验证。 |
0 | 连接到订阅服务器时使用 SQL Server 身份验证。 | |
subscriber_provider | 非 SQL Server 数据源的 OLE DB 访问接口用于注册的唯一编程标识符 (PROGID)。 此属性仅适用于非 SQL Server 订阅服务器。 | |
subscriber_providerstring | OLE DB 访问接口特定的连接字符串,用于标识数据源。 此属性仅适用于非 SQL Server 订阅服务器。 | |
subscriptionstreams | 每个分发代理所允许的向订阅服务器并行应用批量更改的连接数。 SQL Server 发布服务器支持从 1 到 64 的值范围。 对于非 SQL Server 订阅服务器、Oracle 发布服务器或对等订阅,此属性必须为 0 。 | |
subscriber_type | 1 | ODBC 数据源服务器 |
3 | OLE DB 访问接口 | |
memory_optimized | bit | 指示订阅支持内存优化表。 memory_optimized位,其中 1 等于 true(订阅支持内存优化表)。 |
[ @publisher = ] 'publisher'
指定非 SQL Server 发布服务器。 publisher 为 sysname,默认值为 NULL。
注意
不应为 SQL Server 发布服务器指定发布 服务器。
返回代码值
0 (成功) 或 1 (失败)
注解
sp_changesubscription用于快照和事务副本 (replica)。
sp_changesubscription只能用于修改排队更新事务副本 (replica)中涉及的推送订阅或拉取订阅的属性。 若要更改所有其他请求订阅类型的属性,请使用sp_change_subscription_properties(Transact-SQL)。
更改代理登录名或密码之后,必须先停止并重新启动代理,然后更改才能生效。
权限
只有 sysadmin 固定服务器角色的成员或db_owner固定数据库角色的成员才能执行sp_changesubscription。
另请参阅
sp_addsubscription (Transact-SQL)
sp_dropsubscription (Transact-SQL)
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈