查找全表数据:
23:30:27 SQL> select * FROM emp;
删除某一条数据:
23:31:39 SQL> delete from emp where empno= 7934;
发现错误,回想起删除数据的时间:本例中实在23点31分左右删除的,执行flashback语句:
23:40:39 SQL> flashback table emp to timestamp to_timestamp('10-07-12 23:30:00','dd-mm-yy hh24:mi:ss');
flashback table emp to timestamp to_timestamp('10-07-12 23:30:00','dd-mm-yy hh24:mi:ss')
*
ERROR at line 1:
ORA-08189: cannot flashback the table because row movement is not enabled
该操作失败,因为默认情况下没有为任何表启动行移动(作为表闪回的前提条件),因此要为这个表启动它:
23:45:55 SQL> alter table emp enable row movement;
Table altered.
现在重新尝试闪回:
23:47:38 SQL> flashback table emp to timestamp to_timestamp('10-07-12 23:30:00','dd-mm-yy hh24:mi:ss');
Flashback complete.