环境:
OS:Red Hat Linux As 5
DB:Oracle 10.2.0.4
今天有个开发的同时将某个表数据全删除掉了,因为删除的时间不是很久,undo空间还没有被覆盖,最后从undo中将数据恢复了回来.如下是模拟恢复的过程.
SQL> connect hxl/hxl
已连接。
SQL> alter session set nls_language=american;
Session altered.
SQL> create table tb_rollback_test
2 as
3 select rownum rn from dual connect by rownum select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') sys_date from dual;
SYS_DATE
-------------------
2012-07-08 20:18:31
SQL> delete from tb_rollback_test;
100 rows deleted.
SQL> commit;
Commit complete.
SQL> select count(1) from tb_rollback_test
2 as of TIMESTAMP
3 to_date('2012-07-08 20:18:31','YYYY-MM-DD HH24:MI:SS');
COUNT(1)
----------
100
SQL>
可以看出,删除的数据可以从undo空间找回来.但是truncate是不能恢复的.
-- The End --