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

DROP TABLE 恢复oracle中误删除drop掉的表

2016-07-20 10:40 381 查看
1、查询表创建时间

SELECT OBJECT_NAME, CREATED

FROM ALL_OBJECTS

WHERE OBJECT_TYPE = 'TABLE'

 and object_name ='temp1'

ORDER BY CREATED DESC;
2、假如误操作drop table temp1; commit

3、查看回收站中表

select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin;

object_name  original_name

-----------------------------------------

BIN$abcd$0             IND_TEMP1

BIN$hgcd$0             TEMP1

4、

恢复表

SQL>flashback table test_drop to before drop;或

SQL>flashback table "BIN$hgcd$0   " to before drop;

5、可以庆祝成功了吗?

select INDEX_NAME from user_indexs where table_name='TEMP1'

INDEX_NAME 

-----------

BIN$abcd$0

虽然看起来表已经恢复了,但是索引恢复的有点问题,恢复出来的索引名称不是IND_TEMP1,故我们还要手动完成索引名修改。

alter index "BIN$abcd$0" rename to IND_TEMP1;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息