티스토리 뷰
1. AS OF TIMESTAMP - 역할
작업시 실수로 삭제된 데이터를 복구
※ 영구적으로 가능한 것이 아니라 데이터 복구 가능 시간이 제한적임
삭제되었을 때 최대한 빠른 시간 내에 사용
2. AS OF TIMESTAMP - 기본 테이블
◈ TEST_TABLE_ONE
IDX | NAME | AMT | ID |
1 | 테스트1 | 1000 | test1 |
2 | 테스트2 | 2000 | test2 |
3 | 테스트3 | 3000 | test3 |
4 | 테스트4 | 4000 | test4 |
5 | 테스트5 | 5000 | test5 |
3. AS OF TIMESTAMP - SQL 문장
1. 실수로 ID가 test1 인 사람을 삭제
◈ SQL
1 | DELETE FROM TEST_TABLE_ONE WHERE id='test1'; |
◈ 결과 테이블
IDX | NAME | AMT | ID |
2 | 테스트2 | 2000 | test2 |
3 | 테스트3 | 3000 | test3 |
4 | 테스트4 | 4000 | test4 |
5 | 테스트5 | 5000 | test5 |
2.테이블을 10분전 상태로 되돌려 데이터 확인 (HOUR,MINUTE,SECOND 사용 가능)
◈ SQL
1 2 | SELECT * FROM TEST_TABLE_ONE AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '10' MINUTE); |
◈ 결과 테이블
IDX | NAME | AMT | ID |
1 | 테스트1 | 1000 | test1 |
2 | 테스트2 | 2000 | test2 |
3 | 테스트3 | 3000 | test3 |
4 | 테스트4 | 4000 | test4 |
5 | 테스트5 | 5000 | test5 |
3.삭제된 데이터를 다시 삽입
◈ SQL
1 2 3 4 5 | INSERT INTO TEST_TABLE_ONE (SELECT * FROM TEST_TABLE_ONE AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '10' MINUTE) WHERE ID='test1') |
'[개발]프로그래밍 > sql' 카테고리의 다른 글
[mysql] DATE - 날짜와 시간 관련 함수 (0) | 2016.09.22 |
---|---|
[mysql] ROUND(),TRUNCATE() - 반올림과 버림 (0) | 2016.09.22 |
[oracle] ROUND() , TRUNC() - 반올림과 버림 (0) | 2016.09.21 |
[oracle] IS NULL - NULL 처리 (0) | 2016.09.20 |
[oracle] LIKE - 특정 문자를 포함한 검색 (0) | 2016.09.20 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday