Posted
Filed under DataBase/Oracle

오라클에서 실수로 테이블에 있는 내용들을
DELETE FROM 하여 지워지지 말아야 하는 자료를 삭제 하고 커밋(Commit) 을 하여 지워 버렸다면,

ORACLE 에서 timestamp 를 이용하여 삭제 전의 데이터를 조회 하여 복구 할 수 있습니다.

SELECT
*
FROM 지워버린테이블 AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '10' MINUTE)
(WHERE 조건 )

으로 조회 하면 10분전 상황의 데이터가 조회가 됩니다.
(MINUTE 대신 HOUR, SECOND 등도 사용 할 수 있습니다.)

[참고사항]

오라클 환경 설정에 따라서 복구가능한 시간이 달라 질 수 있습니다. 무조건 3 HOUR 해도 환경에 따라 3시간 전 상황으로 복구가 불가능 할 수도 있습니다 [ORA-01555] 오류발생

2020/09/18 21:07 2020/09/18 21:07
Posted
Filed under DataBase/Oracle

MSSQL 에서 Except 를 사용하면 테이블1과 테이블2 와 중복되는 데이터 뺴고 출력해 주는데.

SELECT * FROM TABLE1 
EXCEPT
SELECT * FROM TABLE2

(둘다 컬럼 정보가 같다고 보면...)
오라클에서 EXCEPT 쓰면 에러를 .....내뱉음...
오라클에서는 MINUS 를 써서 사용 하면 됨...

SELECT * FROM TABLE1 
MINUS
SELECT * FROM TABLE2

2016/08/02 15:21 2016/08/02 15:21