Oracle 表 drop 后闪回恢复

来源:转载

今天因为要做一个数据清理的工作,要将仿真环境的数据导入到临时环境里面去进行测试,但是同时间有另一个同事在临时环境做数据整理的工作。

可能是他太过忙了都没有看我发出的通知,到点之后我就将临时环境中的表清理了,刚drop掉了table他就走过来跟我喊“还我数据!!”

(⊙o⊙)…好吧,那就还你数据吧。
(心里OS:还好在临时环境里面是开启了闪回功能,还有救 = =||)

1 由于表被drop掉了,所以只能够在仿真环境中将表名找回(还好仿真环境的表跟临时环境的表是一样的 = =||),于是有了下面的SQL脚本:

select 'flashback table '||A.TABLE_NAME||' to before drop;' from user_tables a where a.tablespace_name = 'xxx';

2 在仿真环境中执行了之后得到了大量的表数据脚本,于是在PLSQL中将数据以Excel的方式导出,导出后直接复制所有脚本。

3 打开PLSQL开启Command窗口,将复制的内容直接粘贴进去,让PLSQL自己执行,恢复完成。



分享给朋友:
您可能感兴趣的文章:
随机阅读: