日期:2014-05-16 浏览次数:20605 次
以前一直以为ORACLE的闪回如果对于同一命名的对象只能闪回最后一次删除的对象,但是今天看了下ORACLE的回收站user_recyclebin表后发现对于同一命名的对象删除后再回收站中都能找到一条记录,只是如果闪回的话第一次是闪回最后一次删除的对象,如果将该对象PURGE删除后,再闪回一次,则恢复的是倒数第二次删除的对象,依次类推。
实际操作:
建立测试表:
?
create table test_table( test_column number );
?
?删除该表;
再建立一次该表,此次插入一条记录
?
insert into test_table values(1);
?再删除该表,再建立该表一次,再插入一条记录,
?
insert into test_table values(2);
?
再删除该表,这是再user_recyclebin表中会发现有三条表名为test_table的记录,
这时使用flashback table test_table to before drop恢复被删除的表,再
select * from test_table,会发现恢复的是最后一次删除的表,purge删除后,再flashback table test_table to before drop一次会发现恢复的是第二次删除的表,依次类推!
?
清除回收站中的所有表:
purge recyclebin;