[SQL] Oracle 데이터 타입 - 고정 길이 vs 가변 길이, CHAR / VARCHAR2 / NUMBER / DATE / CLOB / BLOB
by 우와한개발자
1. 문자 데이터 타입
- 주로 일반 문자열은 VARCHAR2, 대용량 텍스트는 CLOB 사용
| 타입 | 특징 |
| CHAR(길이) | 고정 길이 (부족하면 공백 채움) |
| VARCHAR2(길이) | 가변 길이 (입력한 만큼만 저장) |
| NCHAR(길이) | 고정 길이 유니코드 |
| NVARCHAR2(길이) | 가변 길이 유니코드 |
| CLOB | 대용량 문자열 (최대 4GB) Character Large Object |
⚠️ 고정길이와 가변길이
- 고정길이는 선언한 길이만큼 무조건 공간 사용하고 부족하면 공백으로 채움
- 가변 길이 입력한 데이터 길이만큼만 저장
2. 숫자 데이터 타입
- 주로 NUMBER 사용
| 타입 | 특징 |
| NUMBER(전체자리수[, 소수점 자리수]) | 정수/실수 모두 가능 |
| BINARY_FLOAT | 32bit 부동소수 |
| BINARY_DOUBLE | 64bit 부동소수 |
3. 날짜 데이터 타입
- DATE도 시간 포함
| 타입 | 특징 |
| DATE | 날짜와 시간 (초까지 포함) |
| TIMESTAMP | 날짜와 시간과 밀리초 |
4. 바이너리 데이터 타입
| 타입 | 특징 |
| RAW(size) | 작은 바이너리 |
| BLOB | 대용량 바이너리. Binary Large Object |
| BFILE | 외부 파일 참조 |
⚠️ LONG은 LIKE 등 WHERE 절에서 조건 비교 거의 불가능하여 잘 안씀.
타입 이유 LONG CLOB으로 대체 LONG RAW BLOB으로 대체
블로그의 정보
우와한개발자 님의 블로그
우와한개발자