我可以安全地更改目标计算机上复制的SQL Server表中的数据吗?

时间:2012-05-12 14:34:47

标签: sql-server-2008 replication

我将一个表从一个SQL Server 2008实例复制到另一个已经正常工作的表。我还想在SQL Server的目标实例上的复制表中设置一个字段,但我不确定是否允许这样做(即使它似乎有效)。

背后的原因:从服务器A到B的复制,服务器B上的行的处理,然后在处理行时设置(例如,诸如“已处理”的标志)。此信息在服务器A上不可用,只能在服务器B上设置。

更麻烦的方法是在服务器B上有一个单独的表,它必须在复制表中保留已经处理过的ID条目,但这可能不是必需的吗?

提前致谢

-G。

1 个答案:

答案 0 :(得分:1)

使用事务复制时,默认情况下应将订阅服务器视为只读。这是因为如果在订阅服务器上更改了数据 - 无论是插入,更新还是删除 - 它不仅会导致数据一致性错误,而且重新初始化可能会将订阅者数据擦除为文章 @pre_creation_cmd 默认设置为删除

如果您要更新订阅者的数据,我建议您使用Updatable Subscriptions for Transactional ReplicationPeer to Peer ReplicationMerge Replication