微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PlSQL DROP 表后找回表和数据

//利用ORACLE闪回机制,将删除的表闪回回来 找到回收站里删掉的表
select * from user_recyclebin where DROPTIME >'2012-02-22 00:00:00'; 

//在闪之前, 但删除的表,如果又重新创建了一样的表名,所以不能直接闪回,要先//删除这些表, (如需删除冲突表,执行此以下查询结果内容中的sql语句) 
select 'drop table '||ORIGINAL_NAME||' cascade constraint;' from user_recyclebin where DROPTIME >'2010-02-08 09:00:00' and type = 'TABLE'; 

//( 生成闪回表的语句 )
select 'flashback table '||ORIGINAL_NAME||' to before drop;' from user_recyclebin where DROPTIME >'2012-02-22 17:00:00' and type = 'TABLE'; 

//(索引恢复)
select 'ALTER INDEX "'||OBJECT_NAME||'" rename to '||ORIGINAL_NAME||';' from user_recyclebin where DROPTIME >'2012-02-22 17:00:00' and type = 'INDEX';

//(触发器恢复)
select 'ALTER TRIGGER "'||OBJECT_NAME||'" rename to '||ORIGINAL_NAME||';' from user_recyclebin where DROPTIME >'2012-02-22 17:00:00' and type = 'TRIGGER';

原文地址:https://www.jb51.cc/oracle/210973.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐