****************************************************************************
날짜 : 2008년 4월 16일 수요일
제목 : Flashback Serise ③ Flashback version query
기능 : 임의의 과거시점에 저장하고 있던 로우데이터(Commit되었던 데이터)의 사용
****************************************************************************

※ 이 과정은 hr 사용자로 테스트를 합니다
    hr 계정이 잠기신 분들은 lock을 해제해 주세요
   
    또한 오라클에서 제공하는 sample이 있어야 합니다(설치시 체크)

   
SQL> ALTER USER hr ACCOUNT UNLOCK;

※ 참고서적 : Oracle 10g 서브 노트

※ 테스트 환경 : Oracle 11g



개요

임의의 과거 시점에 저장하고 있던 로우 데이터(Commit 되었던 데이터)를

versions between timestamp    
or
versions between scn
                               

절을 사용하여 쿼리할 수 있는 기능

효과
- 지금까지 임의의 정보가 어떤 과정을 통해 변경되어져 왔는지를 확인할 수 있다

한계
- 이미 Commit 되어진 데이터에 국한된다
  Commit되지 않은 데이터는 쿼리할 수 없다

1. Test Data 확인

SQL> connect hr/hr password

SQL> select * from departments;


DEPARTMENT_ID   DEPARTMENT_NAME   MANAGER_ID   LOCATION_ID
--------------------------    ---------------------------------   ---------------------   ----------------------
                              10                  Administration                        200                     1700
.
.
.
                            120                              Treasury                                                     1700
.
.
.

현재 department_id 120에 대한 manager_id 컬럼값 = Null

2. department_id 120에 대한 manager_id 컬럼 값 = 194 로 갱신

SQL> update departments set manager_id=194
        2 where department_id=120;

SQL> select * from departments;
를 통해 update 확인

3. department_id, manager_id 컬럼에 대한 10분전부터 1분전까지 변경된 로우데이터 출력

SQL> select department_id, manager_id from departments
        2 versions between timestamp
        3 systimestamp - interval '10' minute and systimestamp - interval'1' minute
        4 where department_id=120;


DEPARTMENT_ID   MANAGER_ID
---------------------------   ---------------------
                            120

◀ PREV | 1 | ... 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | ... 116 | NEXT ▶

카테고리

All。 (116)
Always ing...♥ (7)
Adobe。 (20)
Database。 (27)
Java。 (16)
Windows。 (2)
Linux。 (3)
C Language (7)
ATmega (11)
System & Network Programm.. (0)
Assembly (4)
ARM7TDMI AT91SAM7S256 (10)
PXA 255 (1)
Windows API (6)
잡동。 (2)
Algorithms (0)
Total : 16,801
Today : 37 Yesterday : 20