SQL Server是否合并复制事务感知?

时间:2011-06-07 11:06:41

标签: sql-server replication

如果我在同一个出版物中使用合并复制复制了两个具有一对多关系的表,并且在订阅者上我向事务中的每个添加一行,将SQL Server复制确保在事务中的服务器上应用这些行,也是吗?

1 个答案:

答案 0 :(得分:1)

虽然我不能肯定地说,有令人信服的证据表明答案是

首先,有关using logical records with merge replication州的文章

  

默认情况下,合并复制会逐行处理数据更改   基础。在许多情况下,这是适当的,但对某些人来说   应用程序,相关的行必须作为一个处理   单元。合并复制的逻辑记录功能允许您   定义不同表中相关行之间的关系,以便   行作为一个单元处理。

这似乎表明将多个表的更改分组在一起的方法是定义它们之间的(静态)逻辑记录映射。如果事务可以用作分组更改的临时方法,那么这应该是不必要的。此外,行级冲突解决方案在概念上不适合更改的临时事务分组。

此外,MSmerge_contents table的定义不包括可以存储交易信息的任何地方。有用于标识的列,订户已修改行,列级更改跟踪和逻辑记录跟踪。还有一个很有希望的声音generation列,但a generation is all the changes between merges也是如此。

总之,所有可用的证据都指向在合并时以交易方式应用交易而不是时所做的更改。