【发布时间】:2018-07-01 08:51:03
【问题描述】:
我正在使用 Sybase IQ 15,正在寻找一种将 IQ 表复制到 IQ 复制服务器的机制。
如何在 IQ 中查找数据是否发生变化(IQ 中没有触发器)
能够复制具有时间戳和 id 列的表。
【问题讨论】:
标签: replication sybase database-replication sap-iq
我正在使用 Sybase IQ 15,正在寻找一种将 IQ 表复制到 IQ 复制服务器的机制。
如何在 IQ 中查找数据是否发生变化(IQ 中没有触发器)
能够复制具有时间戳和 id 列的表。
【问题讨论】:
标签: replication sybase database-replication sap-iq
这可以通过系统视图来实现,每当 sybase IQ 表上发生任何数据修改时,都会在系统视图 SYS.SYSIQTAB 中捕获时间戳
SQL 查找表中最后修改的数据
SELECT A.Table_id, T.table_name , dateformat(A.update_time,'mm/dd/yyyy hh:mm:ss.nnnnnn') LastModifiedTime FROM SYS.SYSIQTAB as A, SYS.SYSTABLE as T WHERE A.table_id = T.table_id AND T.table_name ='TableName'
【讨论】:
SAP IQ 的事务日志不能被任何工具复制。甚至供应商 (SAP) 也不支持任何程序来做到这一点。
如果您想从 SAP IQ 复制更改,您需要提供某种您自己的 CDC 逻辑。例如,您可以为每一行提供一个时间戳,并定期运行一个查询来复制自上次运行以来修改的行。
或者您可以定期运行表数据的完整导出。
【讨论】: