【发布时间】:2010-12-16 06:40:19
【问题描述】:
我有一个场景,我使用事务复制将多个 SQL Server 2005 数据库(相同实例)复制到单个远程数据库(单独物理机上的不同实例)中。
然后我将对复制的数据进行一些处理以用于报告目的。我正在使用表级触发器来识别更改哪些操作我的后处理代码。
到目前为止一切都很好。
但是,我想知道的是,在同一个事务中创建、更新或删除某些表的位置,是否可以从复制(或任何地方)中识别某种事务 ID,所以我不知道对单个事务多次执行相同的后处理。
基本示例:我有一个 TUser 表和 TAddress 表。如果我要在单个事务中创建两者,它们也将在单个事务中复制。但是,在复制的数据库中会触发两个触发器 - 目前这会导致我的后处理代码运行两次。我真正想确定的是,这两个更改是在同一个事务中复制到的。
这有可能吗?我描述的标识符是否存在并且可以访问?
【问题讨论】:
标签: sql-server sql-server-2005 replication