sp_helpmergearticle (Transact-SQL)
适用范围:SQL Server
返回有关项目的信息。 此存储过程用于在发布服务器上对发布数据库执行,或在正重新发布的订阅服务器上对订阅数据库执行。
语法
sp_helpmergearticle
[ [ @publication = ] N'publication' ]
[ , [ @article = ] N'article' ]
[ ; ]
参数
[ @publication = ] N'publication'
要检索信息的发布的名称。 @publication 为 sysname,默认值 %
为 ,返回有关当前数据库中所有发布中包含的所有合并项目的信息。
[ @article = ] N'article'
要返回其信息的项目的名称。 @article 为 sysname,默认值 %
为 ,返回给定发布中所有合并项目的相关信息。
结果集
列名称 | 数据类型 | 描述 |
---|---|---|
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 = none1 = drop2 = delete3 = 截断 |
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 Compact 或以前版本的 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(Transact-SQL)。 |
processing_order |
int | 数据更改应用于发布中的项目的顺序。 |
upload_options |
tinyint | 定义对具有客户端订阅的订阅服务器上所进行更新的限制,可以为下列值之一:0 = 对具有客户端订阅的订阅服务器上进行的更新没有限制;所有更改都上传到发布服务器。1 = 订阅服务器上允许更改具有客户端订阅,但不会上传到发布服务器。2 = 客户端订阅的订阅服务器上不允许更改。有关详细信息,请参阅使用仅下载项目优化合并复制性能。 |
identityrangemanagementoption |
int | 指定是否启用自动标识范围处理。 1 为 enabled,并且 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 表示未使用优化。 |
返回代码值
0
(成功)或 1
(失败)。
注解
sp_helpmergearticle
用于合并复制。
权限
只有发布数据库中db_owner固定数据库角色的成员、分发数据库中的 replmonitor 角色或发布的发布访问列表才能执行sp_helpmergearticle
。
示例
DECLARE @publication AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
USE [AdventureWorks2022]
EXEC sp_helpmergearticle
@publication = @publication;
GO