这里简单的描述一下to_timestamp的用法,在测试库上面,经常会有开发人员误删除或修改一些数据,并且已经提交。方法如下:
SQL> select * from emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH CLERK 7902 1980/12/17 800.00 20
7499 ALLEN SALESMAN 7698 1981/2/20 1600.00 300.00 30
7521 WARD SALESMAN 7698 1981/2/22 1250.00 500.00 30
7566 JONES MANAGER 7839 1981/4/2 2975.00 20
7654 MARTIN SALESMAN 7698 1981/9/28 1250.00 1400.00 30
7698 BLAKE MANAGER 7839 1981/5/1 2850.00 30
7782 CLARK MANAGER 7839 1981/6/9 2450.00 10
9999 SCOTT ANALYST 7566 1987/4/19 3000.00 20
7839 KING PRESIDENT 1981/11/17 5000.00 10
7844 TURNER SALESMAN 7698 1981/9/8 1500.00 0.00 30
7876 ADAMS CLERK 7788 1987/5/23 1100.00 20
7902 FORD ANALYST 7566 1981/12/3 3000.00 20
7934 MILLER CLERK 7782 1982/1/23 1300.00 10
13 rows selected
---在2点20分进行了如下误操作
Delete From emp Where deptno=20;
commit;
现在如何找回已经被删除的deptno=20的数据呢?
只需进行如下操作,时间点是在2点20分以前就可以了
select * from emp as of timestamp to_timestamp('2012-02-02 14:13:05','YYYY-MM-DD HH24:MI:SS')
将查询出来的数据直接insert回去,如果是update的出的问题,就将现有出问题的行删除再insert回去,
正式库上面的闪回肯定是关掉的,用次方法能够较为简单快捷的恢复,当然它也它的局限性,这里是
直接查询undo表空间中记录的前镜像,如果前镜像没有了,此方法就不适用了
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10678398/viewspace-715517/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10678398/viewspace-715517/
1358

被折叠的 条评论
为什么被折叠?



