WORK/DB

오라클 데이터 되돌리기

im 수캥이 2019. 1. 7. 18:15

헐 !!!!!!!!!!!!!!!!!!!


하고 나도 모르게 아차 싶을 순간이 있을텐데 

바로 데이터를 DELETE 혹은 UPDATE 했을때 이다.

이럴 때 오라클 이라면 이전 데이터를 되돌릴 수가 있다.


예를 들어


UPDATE USER_INFO SET

USER_NM = '홍길동'

WHERE 1 = 1


깜빡하고 WHERE 절에 조건을 안주고 UPDATE 문을 실행 했을 경우...

몇건이 들어가 있건 USER_NM 컬럼은 '홍길동' 이라는 값이 들어가게 된다.


이럴 때 당황하지말고 되돌려 보자.


SELECT  *  

  FROM USER_INFO AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '1' MINUTE)  


위와같이 입력하면 1분 전으로 되돌릴 수가 있다.


위 옵션은 SECOND, MINUTE, HOUR, DAY로도 사용 될 수 있으니 1분 전이 아니더라도 1시간 , 하루 전으로 돌릴 수도 있다.

조회한 값으로 임시 테이블을 만들던...따로 IMPORT 하던...

본인이 원하는데로 데이터로 되돌리면 된다.