当前位置: 代码迷 >> Oracle开发 >> 数据恢复的函数
  详细解决方案

数据恢复的函数

热度:95   发布时间:2016-04-24 06:34:31.0
求一个数据恢复的函数
比如我在5分钟之前delete了一个表A中的所有数据并且已经提交了事务,这5分钟之内A表也会陆陆续续的产生数据,现在我想查找出5分钟前删除的那些数据,我记得有一个函数能获取指定的时间之前的数据,现在忘记叫什么了,求大神们指点指点,不胜感激。
------解决思路----------------------
闪回查询
select * from test as of timestamp to_timestamp('2014/11/02 11:00:00','yyyy/mm/dd hh24:mi:ss');

------解决思路----------------------
查询闪回(Flashback Query)(10g新增)
SQL> conn scott/tiger

SQL> create table emp2 as select * fromemp;

SQL> select to_char(sysdate, 'YYYY-MM-DDHH24:MI:SS') from dual;

上面语句获取当前时间,如2007-05-12 13:22:33

SQL> select * from emp2;

SQL> delete from emp2;

SQL> commit;

SQL> select * from emp2 as of timestampto_timestamp('2007-05-12 13:22:33', 'YYYY-MM-DD HH24:MI:SS');

 

注意:flashback query查询以前的一个快照点,并不改变当前表的状态
------解决思路----------------------
as of timestamp to_date('','');  这是闪回,但是得抓紧,过了时间 就不一定能找到了。 
  相关解决方案