您的位置:首页 > 数据库 > Oracle

Oracle 表 drop 后闪回恢复

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

可能是他太过忙了都没有看我发出的通知,到点之后我就将临时环境中的表清理了,刚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自己执行,恢复完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle