Oracle SCN_TO_TIMESTAMP 설명 : 오라클 함수
1. 함수의 목적
Oracle SCN_TO_TIMESTAMP는 시스템변경번호(SCN)을 인수로 취해 그 SCN과 연관된 대략적인 timestamp를 리턴한다.
이 기능은 특정 SCN의 시간을 알고자 할 때 유용하게 사용가능하다.
예를 들어, ORA_ROWSCN 가상열과 함께 사용하여 row에 가장 최근의 변경된 시간을 알 수 있다.
* 참고 : SCN이 생성 될 때 SCN과 TIMESTAMP간의 연관성은 제한된 기간 동안 데이터베이스에 의해 기억된다. 이 기간은 데이터베이스가 Automatic Undo Management 모드로 실행되는 경우, 실행 취소 보존 기간의 최대값이며 데이터베이스의 모든 플래시백 아카이브의 보유 시간은 120 시간 이상이다.
SCN_TO_TIMESTAMP에 대한 인수로 지정된 SCN이 너무 오래되면 오류가 리턴된다.
2. 샘플을 통한 개념 퀵뷰
employee_id=189의 최종 SCN(ORA_ROWSCN)을 받아, 해당 SCN의 시간을 리턴한다.
SELECT SCN_TO_TIMESTAMP(ORA_ROWSCN) FROM employees
WHERE employee_id = 189;
3. 사용방법
4. 함수 PARAMETER 설명
[number]
ORA_ROWSCN 자체 혹은 ORA_ROWSCN에서 생성된 숫자를 기입하는 입력 파라미터이다.
5. 다양한 샘플표현
example1) "2. 샘플을 통한 개념 퀵뷰"의 ORA_ROWSCN을 숫자로 넣어도 결과는 다르지 않다.
SELECT ORA_ROWSCN
FROM employees
WHERE employee_id = 189;
SELECT SCN_TO_TIMESTAMP(3272596)
FROM employees
WHERE employee_id = 189;