我的 Oracle 数据库中有这张表,用于存储审计信息。
当我第一次SELECT *
在那张桌子上做 a 时,审计时间戳都在同一天,同一小时内(例如18/10/2013 15:06:45
,,18/10/2013 15:07:29
);下次我这样做时,以前的条目都消失了,然后表格只包含带有16:mm:ss
时间戳的条目。
我认为某些东西正在对该表起作用,因此表内容的每个间隔/可能会备份到某个地方-我不知道在哪里,然后表被清除。但是,由于我不熟悉数据库,我不确定这是做什么的。
我想知道如何找出这个表上的行为,以便我可以反过来检索我需要的以前的数据。
编辑:
到目前为止我尝试过的...
SELECT * FROM DBA_DEPENDENCIES WHERE REFERENCED_NAME='MY_AUDIT_TABLE';
我得到了四个结果,但所有这些结果(基于我的编程技能)都在谈论将数据放入表中,而不是在任何地方备份它。
SELECT * FROM MY_AUDIT_TABLE AS OF TIMESTAMP ...
这只是给我一个特定时间的快照,但由于表更新非常频繁,我每秒查询一次是没有意义的。