DBMS/ORACLE

[ORACLE] ROWID 정의

2sssg 2023. 1. 6. 21:44

정의: 

  • ORACLE에서 INDEX를 생성하기 위하여 내부적으로 사용하는 PSEUDOCOLUMN으로 사용자가 임의로 변경하거나 삭제할 수 없다.
  • 테이블의 한 컬럼처럼 참조만 가능하며 데이터베이스에 값이 저장되지 않는다
  • 물리적인 ADDRESS를 가지고 있어 SINGLE BLOCK ACCESS로 찾고자 하는 ROW를 찾을 수 있어 물리적인 ROWID는 주어진 테이블에 가장 빠른 ACCESS 방법을 제공한다.

 

ROWID

 

AAAArs AAD AAAAUa AAA

------    ---   ------     ---

1             2         3            4

1) 데이터 오브젝트 번호 - 오브젝트의 고유번호를 나타낸다

2) 상대적 파일 번호 - 각각의 데이터 파일에 할당되는 번호

3) 블록 번호 - 데이터 블록의 위치를 알려주는 번호

4) 블록내의 행 번호 - 오라클 블록의 헤더에 저장된 row directory slot의 위치를 알려주는 고유 번호