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 hh34: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 hh34:mi:ss');

flashback table t1 to timestamp to_timestamp('2015-09-20 14:54:00','yyyy-mm-dd hh34: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 hh34: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 hh34:mi:ss');

flashback table t2 to timestamp to_timestamp('2015-09-20 15:07:25','yyyy-mm-dd hh34: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 hh34: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 hh34: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 hh34:mi:ss');

91694 rows created.

@ORA12C> commit;

Commit complete.


分享名称:oracle的闪回查询,闪回删除:
网页链接:http://scyanting.com/article/ihcgpj.html