conflict_<架构>_<表> (Transact-SQL)

conflict_<架构>_<表> 表包含对等复制中的冲突行的相关信息。 发布中的每个复制表都存在一个冲突表,冲突表的名称附加了架构和项目名称。 这些项目特定的冲突表存在于每个发布数据库中。

对于对等复制,默认情况下,分发代理在检测到冲突时将会失败。 冲突错误会记录到错误日志中,但是冲突数据不会记录到冲突表中;因此没有可供查看的冲突数据。 如果允许分发代理继续运行,将在检测到冲突的每个节点本地记录冲突。 有关详细信息,请参阅对等复制中的冲突检测中的“处理冲突”。

列名

数据类型

说明

__$originator_id

int

发起冲突更改的节点的 ID。 若要获得 ID 列表,请执行 sp_help_peerconflictdetection

__$origin_datasource

int

发起冲突更改的节点。

__$tranid

nvarchar (40)

在 __$origin_datasource 中应用的冲突更改的日志序列号 (LSN)。

__$conflict_type

int

冲突类型,可以是下列值之一:

  • 1:更新失败,因为另一个更新已更改了本地行,或者删除了本地行并随后重新插入。

  • 2:更改失败,因为已删除了本地行。

  • 3:删除失败,因为另一个更新已更改了本地行,或者删除了本地行并随后重新插入。

  • 4:删除失败,因为已删除了本地行。

  • 5:插入失败,因为已插入了本地行,或者已插入并随后更新了本地行。

__$is_winner

bit

指示该表中的行是否为冲突入选方,这意味着将其应用于本地节点。

__$pre_version

varbinary (32)

发起冲突更改的数据库的版本。

__$reason_code

int

冲突的解决代码。 可以是下列值之一:

  • 0

  • 1

  • 2

有关详细信息,请参阅 __$reason_text

__$reason_text

nvarchar (720)

冲突的解决情况。 可以是下列值之一:

  • 已解决 (1)

  • 未解决 (2)

  • 未知 (0)

__$update_bitmap

varbinary (32)

一个位图,指示在发生更新-更新冲突的情况下更新的列。

__$inserted_date

datetime

将冲突行插入此表中的日期和时间。

__$row_id

timestamp

与导致冲突的行关联的行版本。

__$change_id

binary (8)

对于本地行,该值等于与本地行发生冲突的传入行的 __$row_id。 对于传入行,该值为 NULL。

<基表列名>

<基表列类型>

在冲突表中,基表中的每一列都有一个对应的列。