FLASHBACK
: 과거 데이터를 볼 수 있게 해주는 Oracle의 기능
insert into emp
select * from emp
as of timestamp(systimestamp - interval '5' minute); --5분전 emp테이블 상태를 emp에 추가할 수 있음
만약 emp 테이블의 데이터를 지우고, commit까지 했을 경우 데이터를 복구할 수 있는 방법은 위의 쿼리문장을 실행하면 된다.
하지만, 계속 되돌릴 수 없고, undo_retention
이라는 파라미터 (900==15분)를 통해 15분 이내의 데이터만 복구할 가능성이 높다는 것이다.
만약, 업데이트를 할 경우는
merge into emp e
using (select empno, sal from emp as of timestamp(systimestamp - interval '5' minute))s
on(e.empno=s.empno)
when matched then
update set e.sal=s.sal;
위처럼 merge문을 사용하면 된다.