码迷,mamicode.com
首页 > 数据库 > 详细

oracle的闪回查询,闪回删除:

时间:2015-09-21 01:51:31      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:oracle闪回

create table t1 as select * from dba_objects;

SCOTT@ORA12C> select sysdate from dual;

SYSDATE

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

2015-09-20 14:54:10

1 row selected.

SCOTT@ORA12C> delete from t1;

0 rows deleted.

SCOTT@ORA12C> commit;

Commit complete.

SCOTT@ORA12C> select count(*) from t1;


COUNT(*)

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

0

1 row selected.

SCOTT@ORA12C> select count(*) from t1 as of timestamp to_timestamp(‘2015-09-20 14:54:00‘,‘yyyy-mm-dd hh24:mi:ss‘);

COUNT(*)

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

   91692

1 row selected.

SCOTT@ORA12C> flashback table t1 to timestamp to_timestamp(‘2015-09-20 14:54:00‘,‘yyyy-mm-dd hh24:mi:ss‘);

flashback table t1 to timestamp to_timestamp(‘2015-09-20 14:54:00‘,‘yyyy-mm-dd hh24:mi:ss‘)                *

ERROR at line 1:

ORA-08189: cannot flashback the table because row movement is not enabled

SCOTT@ORA12C> alter table t1 enable row movement;

Table altered.

SCOTT@ORA12C> flashback table t1 to timestamp to_timestamp(‘2015-09-20 14:54:00‘,‘yyyy-mm-dd hh24:mi:ss‘);

Flashback complete.

SCOTT@ORA12C> select count(*) from t1;

COUNT(*)

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

   91692


1 row selected.

注意system表空间下面的表不能闪回,不能跨越DDL语句,


SYS@ORA12C> flashback table t2 to timestamp to_timestamp(‘2015-09-20 15:07:25‘,‘yyyy-mm-dd hh24:mi:ss‘);

flashback table t2 to timestamp to_timestamp(‘2015-09-20 15:07:25‘,‘yyyy-mm-dd hh24:mi:ss‘)                *

ERROR at line 1:

ORA-08185: Flashback not supported for user SYS

但是可以查询:

SYS@ORA12C>  select count(*) from t2 as of timestamp to_timestamp(‘2015-09-20 15:07:25‘,‘yyyy-mm-dd hh24:mi:ss‘);


COUNT(*)

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

   91694

1 row selected.

可以重新建一张表或者直接insert:

SYS@ORA12C> create table t3 as select * from t2 as of timestamp to_timestamp(‘2015-09-20 15:07:25‘,‘yyyy-mm-dd hh24:mi:ss‘);

Table created.

SYS@ORA12C> insert into t2 select * from t2 as of timestamp to_timestamp(‘2015-09-20 15:07:25‘,‘yyyy-mm-dd hh24:mi:ss‘);

91694 rows created.

@ORA12C> commit;

Commit complete.

oracle的闪回查询,闪回删除:

标签:oracle闪回

原文地址:http://7642644.blog.51cto.com/7632644/1696517

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!