Oracle10g提供了闪回(flashback) drop的功能。即drop操作不再是真正删除它,而是将该对象自动将放入回收站(recyclebin)。
回收站内的相关信息可以从recyclebin/user_recyclebin/dba_recyclebin等视图中获取,或者通过SQL*Plus的show recyclebin 命令查看。
purge和drop的区别:
回收站打开的情况下:
drop table 表名; --删除表,表会改名进回收站
drop table 表名 purge; --不经过回收站直接删除
purge table 表名;--清除指定表
--查询垃圾信息:
SELECT r.object_name,r.type ,r.original_name FROM user_recyclebin r;
purge recyclebin; --清空回收站
--类似的我们可以通过purge user_recyclebin或者是purge dba_recyclebin来清除不同的回收站对象。
注:用户drop后不进recycle bin,所以不用purge
drop后的表被放在回收站(user_recyclebin)里,而不是直接删除掉。
闪回操作:
--例如要恢复刚刚误删的emp表:
FLASHBACK TABLE emp TO BEFORE DROP;