关于误删表可在回收站中闪回

一 概述

1、从oracle10g开始删除数据库表的时候并不是真正删除,而是放到了recyclebin中,这个过程类似 windows里面删除的文件会被临时放到回收站中。

2、删除的表系统会自动给他重命名就是你看到的 【BIN$】开头的名字。

 

二 删除表命令

1、删除普通表

Drop Table test;

2、删除带约束的表

Drop Table test cascade constraint;

 

三 查看回收站

1、通过  命令可以查看被删掉的表的详细信息,

show recyclebin

2、或者查询

select * from recyclebin;

 

关于误删表可在回收站中闪回

 

四 收回表的命令

1、从回收站中捡回被删除的表

flashback table 原表名 to before drop;

关于误删表可在回收站中闪回

2、从回收站中捡回被删除的表并重命名该表

flashback table test to before drop Rename to test_bak;

 

五 其他命令

1、清空回收站的命令:

purge recyclebin;

2、如果删除的表不想经过回收站(一次性彻底删除表)

drop table 表名 purge;

3、或者停用数据库的回收战功能10.1版本中,

修改隐藏参数 _recyclebin,alter system set "_recyclebin" = false;

10.2版本中,alter system set recyclebin = off;

你可能感兴趣的:(闪回)