在DB2到SQL Server之间同步数据

时间:2015-12-07 20:07:03

标签: sql sql-server triggers db2

我正在尝试寻求一些帮助,使数据从DB2实时同步到SQL Server,反之亦然。为什么我需要这个,因为我们的约束,我们被迫走这条路线,其中一些应用程序在SQL Server中,一些应用程序在DB2中。现在他们有了共同的表格。因此,当SQL Server端的应用程序更新/插入/删除时,我们应该在DB2端获取它。类似地,当DB2端的应用程序更新/插入/删除时,我们应该在SQL Server中获取它。

我找到了一些方法,但我不确定我是否做得对。

  1. 通过链接服务器使用触发器。 (但是我得到了这个无法执行请求的操作,因为链接服务器的OLE DB提供程序“DB2OLEDB”不支持所需的事务接口。

  2. 使用SSIS

  3. 复制

  4. 我的触发器: - 这就是我实现TriggerUSE [MyDatabase]的方法 GO

    SET ANSI_NULLS ON 走 SET QUOTED_IDENTIFIER ON 走 SET XACT_ABORT ON 去

    ALTER TRIGGER [dbo]。[UpdateTrigger] ON [dbo]。[MySQLTable]     更新 如 开始分发交易

    DECLARE @TSQL varchar(8000),@ VAR char(2),@ Cat varchar(2) SELECT @VAR ='TT' SELECT @TSQL = 'UPDATE oq SET oq.STATUS = p.STATUS FROM OPENQUERY(MyLinkedServer,''select * from DB2Database.dbo.MyDb2Table WHERE ID ='''''+ @VAR +''''''和Num = 1和Seq = 1'')oq INNER JOIN dbo.MySQLTable p ON oq.ID整理SQL_Latin1_General_CP1_CI_AS = p.ID和oq.NUM = p.NUM和oq.SEQ = p.SEQ' < / p>

    EXEC(@TSQL)

    COMMIT TRANSACTION

0 个答案:

没有答案