sp_helpmergearticle (Transact-SQL)
返回有关项目的信息。此存储过程在发布服务器的发布数据库中执行,或在正重新发布的订阅服务器的订阅数据库中执行。
语法
sp_helpmergearticle [ [ @publication = ] 'publication' ]
[ , [ @article= ] 'article' ]
参数
- [ @publication=] 'publication'
要检索其信息的发布的名称。publication的数据类型为 sysname,默认值为 %,表示返回有关当前数据库中所有发布所包含的所有合并项目的信息。
- [ @article=] 'article'
返回其信息的项目的名称。article的数据类型为 sysname,默认值为 %,表示返回有关给定发布中的所有合并项目的信息。
返回代码值
0(成功)或 1(失败)
结果集
列名
数据类型
说明
id
int
项目标识符。
name
sysname
项目名。
source_owner
sysname
源对象所有者的名称。
source_object
sysname
从其中添加项目的源对象的名称。
sync_object_owner
sysname
定义发布项目的视图所有者的名称。
sync_object
sysname
用于建立分区初始数据的自定义对象的名称。
description
nvarchar(255)
对项目的说明。
status
tinyint
项目的状态,可以为以下值之一:
1 = 非活动
2 = 活动
5 = 数据定义语言 (DDL) 操作挂起
6 = 带新生成快照的 DDL 操作
注意:
重新初始化项目时,值 5 和 6 更改为 2。
creation_script
nvarchar(255)
用于在订阅数据库中创建项目的可选项目架构脚本的路径和名称。
conflict_table
nvarchar(270)
存储插入或更新冲突的表的名称。
article_resolver
nvarchar(255)
项目的自定义冲突解决程序。
subset_filterclause
nvarchar(1000)
用于指定水平筛选的 WHERE 子句。
pre_creation_command
tinyint
预创建方法,可以为以下值之一:
0 = 无
1 = 放置
2 = 删除
3 = 截断
schema_option
binary(8)
项目的架构生成选项位图。有关此位图选项的信息,请参阅 sp_addmergearticle 或 sp_changemergearticle。
type
smallint
项目类型,可以为以下值之一:
10 = 表
32 = 存储过程
64 = 视图或索引视图
128 = 用户定义函数
160 = 仅同义词架构
column_tracking
int
列级跟踪的设置;其中,1 表示打开列级跟踪,0 表示关闭列级跟踪。
resolver_info
nvarchar(255)
项目冲突解决程序名。
vertical_partition
bit
表示项目是否是垂直分区的;其中,1 表示项目是垂直分区的,0 则表示不是垂直分区。
destination_owner
sysname
目标对象的所有者。只适用于合并存储过程、视图和用户定义函数 (UDF) 架构项目。
identity_support
int
是否启用自动标识范围处理;其中 1 为启用,0 为禁用。
pub_identity_range
bigint
分配新标识值时要使用的范围大小。有关详细信息,请参阅复制标识列的“合并复制”部分。
identity_range
bigint
分配新标识值时要使用的范围大小。有关详细信息,请参阅复制标识列的“合并复制”部分。
threshold
int
用于运行 SQL Server 2005 Compact Edition 或早期版本的 SQL Server 的订阅服务器的百分比值。threshold 控制合并代理何时分配一个新的标识范围。如果使用了在阈值中指定的百分比值,合并代理将创建新的标识范围。有关详细信息,请参阅复制标识列的“合并复制”部分。
verify_resolver_signature
int
表示在合并复制中使用冲突解决程序之前是否对数字签名进行验证;其中, 0 表示不对签名进行验证,1 表示对签名进行验证以查看它是否来自受信任的源。
destination_object
sysname
目标对象的名称。只适用于合并存储过程、视图和 UDF 架构项目。
allow_interactive_resolver
int
表示是否对项目使用交互式冲突解决程序;其中, 1 表示使用此冲突解决程序,0 表示不使用冲突解决程序。
fast_multicol_updateproc
int
启用或禁用合并代理,以在一条 UPDATE 语句中将更改应用于同一行中的多个列;其中,1 表示在一条语句中更新多个列,0 表示对每个更新的列发布单独的 UPDATE 语句。
check_permissions
int
一个整数值,表示已验证的表级权限的位图。有关可能值的列表,请参阅 sp_addmergearticle。
processing_order
int
数据更改应用于发布中的项目的顺序。
upload_options
tinyint
定义对具有客户端订阅的订阅服务器上所进行更新的限制,可以为下列值之一:
0 = 对具有客户端订阅的订阅服务器上所进行的更新没有任何限制;所有更改都将上载到发布服务器。
1 = 允许在具有客户端订阅的订阅服务器上进行更改,但更改不上载到发布服务器。
2 = 不允许在具有客户端订阅的订阅服务器上进行更改。
有关详细信息,请参阅使用仅下载项目优化合并复制的性能。
identityrangemanagementoption
int
是否启用自动标识范围处理;其中 1 为启用,0 为禁用。
delete_tracking
bit
是否复制删除;其中,1 表示复制删除,0 表示不复制删除。
compensate_for_errors
bit
指示在同步过程中遇到错误时是否采取补救措施;其中, 1 指示采取补救措施,0 表示不采取补救措施。
partition_options
tinyint
定义项目中数据的分区方式,当所有行只属于一个分区或只属于一个订阅时,则启用性能优化。partition_options 可以是下列值之一。
0 = 项目的筛选是静态的,或不为每个分区生成唯一的数据子集;也就是说,它是一个“重叠”分区。
1 = 分区重叠,且在订阅服务器上进行的数据操作语言 (DML) 更新无法更改行所属的分区。
2 = 对项目的筛选将生成不重叠分区,但多个订阅服务器可以接收到相同的分区。
3 = 对项目的筛选将为每个订阅生成唯一的不重叠分区。
artid
uniqueidentifier
唯一标识项目的标识符。
pubid
uniqueidentifier
唯一标识在其中发布项目的发布的标识符。
stream_blob_columns
bit
表示在复制二进制大型对象列时是否使用数据流优化。1 表示使用优化,0 表示不使用优化。
备注
sp_helpmergearticle 用于合并复制。
权限
只有发布数据库中 db_owner 固定数据库角色的成员、分发数据库中 replmonitor 角色的成员或发布的发布访问列表中的成员能够执行 sp_helpmergearticle。
示例
DECLARE @publication AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
USE [AdventureWorks]
EXEC sp_helpmergearticle
@publication = @publication;
GO
请参阅
参考
sp_addmergearticle (Transact-SQL)
sp_changemergearticle (Transact-SQL)
sp_dropmergearticle (Transact-SQL)
复制存储过程 (Transact-SQL)
其他资源
How to: View and Modify Article Properties (Replication Transact-SQL Programming)