在DB2中是否存在一个sql查询,它将获取自给定时间戳以来任何记录已更新的表/记录?
我使用的以下查询仅在表更改时获取,而不是在更新记录时获取。
SELECT TRIM(TABSCHEMA) || '.' || TRIM(TABNAME),
MAX(CREATE_TIME,ALTER_TIME)
FROM SYSCAT.TABLES
ORDER BY 2 DESC
答案 0 :(得分:0)
通用解决方案是向每个表添加时间戳跟踪列,默认为current timestamp
,然后选择带有union的所有MAX()
值,并使用timestamp参数进行过滤。
另一个解决方案是创建一个trigger
,用表名和当前时间戳更新跟踪表。