Oracle SQL table 历史

Oracle SQL table history

这就是问题所在,我有一个 Oracle table,只是一个普通的 table,假设有 300 行数据。

我需要弄清楚该数据至少在 100 天前是什么样子的,谁进行了更改,时间戳也很好。 事情是,我确实有一个计划备份,但我相信有人更改了数据并删除了备份,所以我试图通过系统记录找出这个变化。

我做了 google 这个,现在得到的结果,我没有得到我需要的。

Oracle SQL 信息 - Java(TM) 平台 1.7。0_51 甲骨文 IDE 4.0.0.13.80 版本支持 4.0.0.13.80

你们还有别的想法吗? 提前谢谢你

您可以使用闪回:Using Oracle Flashback Technology

这样,您可以使用 AS OF TIMESTAMP 子句进行查询,如下所示:

SELECT * FROM yourtable
  AS OF TIMESTAMP TO_TIMESTAMP('2004-04-04 09:30:00', 'YYYY-MM-DD HH:MI:SS');

虽然这必须启用,并且有一定的(可配置的)大小限制,因此不能保证您仍然可以查询 100 天前的那些记录。在繁忙的数据库中,历史记录可能只返回几分钟。