我有一个场景,我正在使用事务复制将多个SQL Server 2005数据库(同一实例)复制到单个远程数据库(单独物理机器上的不同实例)。SQL Server 2005/8复制事务ID
然后,我对复制数据执行一些处理以进行报告。我正在使用表级触发器来识别对我的后处理代码进行操作的更改。
到目前为止一切都很好。
但是,我想知道的是,在同一个事务中创建,更新或删除某些表时,是否可以从复制(或任何地方)识别某种事务ID,然后我不'对单个交易多次执行相同的后处理。
基本示例:我有一个TUser表和TAddress表。如果我要在单个事务中创建它们,那么它们也将在单个事务中复制。但是,在复制数据库中会触发两个触发器 - 目前会导致我的后处理代码运行两次。我真正想要确定的是,这两个更改是在同一个事务中复制的。
这有可能以任何方式吗?我描述的标识符是否存在并且是否可访问?
感谢您的回复。你能提供任何有关长答案摘要的信息吗?即使这是不可能的,我想知道你在想什么。 – 2009-11-16 11:34:38
至于其他解决方案都已经考虑。然而,我给出的例子非常简单,实际上是一个包含数百个表的financail系统数据库。服务代理和投票更改都已打上折扣。我们在经过大量研究之后已经登陆了我们的所在地,但如果可能的话,我们真的希望能够将不同的表格更改链接到单个交易。我相信有一些系统交易价值可用,但不知道这些是多么可靠? – 2009-11-16 11:35:10