[Oracle] FLASHBACK QUERY

당당·2023년 12월 23일
0

Oracle

목록 보기
24/51

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문을 사용하면 된다.

profile
MySQL DBA 신입

0개의 댓글