sp_helpmergeconflictrows (Transact-SQL)

适用于SQL Server

返回指定冲突表中的行。 此存储过程在存储冲突表的计算机上运行。

Transact-SQL 语法约定

语法

sp_helpmergeconflictrows
    [ [ @publication = ] N'publication' ]
    , [ @conflict_table = ] N'conflict_table'
    [ , [ @publisher = ] N'publisher' ]
    [ , [ @publisher_db = ] N'publisher_db' ]
    [ , [ @logical_record_conflicts = ] logical_record_conflicts ]
[ ; ]

参数

[ @publication = ] N'publication'

发布的名称。 @publication为 sysname,默认值为 %. 如果指定了发布,将返回由该发布限定的所有冲突。 例如,如果MSmerge_conflict_Customers表具有与发布的冲突行WACA,则传入发布名称CA将检索与CA发布相关的冲突。

[ @conflict_table = ] N'conflict_table'

冲突表的名称。 @conflict_tablesysname,无默认值。 冲突表是使用格式名称命名的 MSmerge_conflict__publication_article_*,每个已发布项目都有一个表。

[ @publisher = ] N'publisher'

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

[ @publisher_db = ] N'publisher_db'

发布服务器数据库的名称。 @publisher_db为 sysname,默认值为 NULL.

[ @logical_record_conflicts = ] logical_record_conflicts

指示结果集是否包含有关逻辑记录冲突的信息。 @logical_record_conflicts为 int,默认值为 0. 1 表示返回逻辑记录冲突信息。

结果集

sp_helpmergeconflictrows 返回由基表结构以及这些附加列组成的结果集。

列名称 数据类型 描述
origin_datasource varchar(255) 冲突的起源。
conflict_type int 表示冲突类型的代码:

1 = 更新冲突:在行级别检测到冲突。

2 = 列更新冲突:在列级别检测到的冲突。

3 = 更新删除 Wins 冲突:删除将赢得冲突。

4 = 更新 Wins 删除冲突:此表中记录了丢失冲突的已删除 rowguid 项。

5 = 上传插入失败:无法对发布服务器应用来自订阅服务器的插入。

6 = 下载插入失败:无法对订阅服务器应用来自发布服务器的插入。

7 = 上传删除失败:订阅服务器上的删除无法上传到发布服务器。

8 = 下载删除失败:无法将发布服务器上的删除下载到订阅服务器。

9 = 上传更新失败:无法在发布服务器上应用订阅服务器上的更新。

10 = 下载更新失败:发布服务器上的更新无法应用于订阅服务器。

12 = 逻辑记录更新 Wins Delete:在此表中记录丢失冲突的已删除逻辑记录。

13 = 逻辑记录冲突插入更新:插入到逻辑记录与更新冲突。

14 = 逻辑记录删除 Wins 更新冲突:在此表中记录丢失冲突的更新逻辑记录。
reason_code int 与上下文相关的错误代码。
reason_text varchar(720) 与上下文相关的错误说明。
pubid uniqueidentifier 发布标识符。
MSrepl_create_time datetime 添加冲突信息的时间。

返回代码值

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

注解

sp_helpmergeconflictrows 用于合并复制。

权限

只有 sysadmin 固定服务器角色的成员db_owner固定数据库角色以及分发数据库中的 replmonitor 角色才能执行sp_helpmergeconflictrows