sp_helpmergeconflictrows (Transact-SQL)
返回指定冲突表中的行。 该存储过程在存储冲突表的计算机上运行。
语法
sp_helpmergeconflictrows [ [ @publication = ] 'publication' ]
, [ @conflict_table = ] 'conflict_table'
[ , [ @publisher = ] 'publisher' ]
[ , [ @publisher_db = ] 'publsher_db' ]
[ , [ @logical_record_conflicts = ] logical_record_conflicts ]
参数
[ @publication=] 'publication'
发布的名称。publication 的数据类型为 sysname,默认值为 %。 如果指定了发布,将返回由该发布限定的所有冲突。 例如,如果 MSmerge_conflict_Customers 表包含 WA 和 CA 发布的冲突行,则传入发布名称 CA 将检索与 CA 发布有关的冲突。[ @conflict_table=] 'conflict_table'
冲突表名。conflict_table 的数据类型为 sysname,无默认值。 在 MicrosoftSQL Server 2005 和更高版本中,使用 MSmerge_conflict_publication_article 格式名称来命名冲突表,每个发布的项目具有一个表。[ @publisher = ] 'publisher'
发布服务器的名称。publisher 的数据类型为 sysname,默认值为 NULL。[ @publisher_db=] '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 = 更新删除入选冲突:删除在冲突中获胜。 4 = 更新入选删除冲突:该表中记录在冲突中落选的已删除 rowguid。 5 = 上载插入失败:来自订阅服务器的插入不能应用于发布服务器。 6 = 下载插入失败:来自发布服务器的插入不能应用于订阅服务器。 7 = 上载删除失败:来自订阅服务器的删除不能上载到发布服务器。 8 = 下载删除失败:来自发布服务器的删除不能下载到订阅服务器。 9 = 上载更新失败:在订阅服务器上的更新不能应用于发布服务器。 10 = 下载更新失败:在发布服务器上的更新不能应用于订阅服务器。 12 = 逻辑记录更新入选删除:该表中记录在冲突中落选的已删除逻辑记录。 13 = 逻辑记录冲突插入更新:指向逻辑记录的插入与更新冲突。 14 = 逻辑记录删除入选更新冲突:该表中记录在冲突中落选的已更新逻辑记录。 |
reason_code |
int |
与上下文相关的错误代码。 |
reason_text |
varchar(720) |
与上下文相关的错误说明。 |
pubid |
uniqueidentifier |
发布标识符。 |
MSrepl_create_time |
datetime |
添加冲突信息的时间。 |
返回代码值
0(成功)或 1(失败)
注释
sp_helpmergeconflictrows 用于合并复制。
权限
只有 sysadmin 固定服务器角色的成员、db_owner 固定数据库角色的成员或分发数据库中的 replmonitor 角色的成员能够执行 sp_helpmergeconflictrows。