본문 바로가기

DBMS/SQLite

[SQLite] 숨겨진 기본키, ROWID

 

SQLite에서는 명시적으로 기본키를 설정하지 않거나 기본키를 설정하더라도 INTEGER 자료형이 아닌 경우에는 내부적으로 숨겨진 기본키인 ROWID를 추가한다.

ROWID는 숨겨질 컬럼이라서 SELECT 문으로 질의할 때 '*'를 사용해서는 가지고 올 수 없고, 명시적으로 'ROWID'라고 지정해야 해당 컬럼을 조회할 수 있다.

 

 

1. 기본키를 INTEGER 자료형으로 하지 않고, ROWID를 명시적으로 지정한 경우

 

 

 

2. 기본키를 INTEGER 자료형으로 하지 않고, '*'을 사용한 경우

 

 

 

3. 기본키를 INTEGER 자료형으로 하고 ROWID를 명시적으로 지정한 경우

 

 

 

4. ROWID는 '_ROWID_', 'OID'라는 별칭을 가지고 있다.