728x90
반응형
Oracle에서 RAW 타입은 **"가공하지 않은(binary) 데이터"**를 저장하는 자료형입니다.
쉽게 말하면 문자가 아니라 순수한 바이트(byte) 값을 저장하는 거예요.
📌 RAW 타입 특징
- 문자열이 아님 → 인코딩 안 된 바이트 시퀀스 저장
- 보통 길이는 최대 2000 바이트 (RAW(n) 에서 n ≤ 2000)
- VARCHAR2 와 달리 문자셋/인코딩 변환 없음
- 출력하면 보통 16진수(hex) 형태로 보입니다
📌 사용 예시
- 바이너리 데이터 저장
CREATE TABLE raw_test ( id NUMBER, data RAW(16) -- 16바이트 저장 가능 );
- INSERT
INSERT INTO raw_test VALUES (1, HEXTORAW('7F45C210'));
- SELECT
SELECT data FROM raw_test; -- 결과: 7F45C210 (hex 값으로 출력)
📌 RAW와 CLOB/BLOB 관계
- CLOB → 문자 기반 대용량 데이터 (Character Large Object)
- BLOB → 바이너리 대용량 데이터 (Binary Large Object)
- DBMS_LOB.SUBSTR 를 BLOB에 쓰면 RAW 타입으로 반환합니다.
- 예: 이미지, 압축 데이터, 암호화 데이터 같은 거 잘라낼 때
📌 정리
- RAW = 가공되지 않은 바이너리 데이터 타입
- 문자열(VARCHAR2)이 아니라 byte 단위로 저장됨
- 보통 암호화 키, 해시값, 바이너리 ID, 이미지 조각 등에 사용
728x90
반응형
'DB' 카테고리의 다른 글
[DB][Oracle] 계산식 적을 때 Alias 사용하기 (0) | 2025.09.18 |
---|---|
[DB][SQL] INNER JOIN 시 ON절과 WHERE (0) | 2025.08.19 |
[DB][Oracle] DBMS_LOB.SUBSTR (0) | 2025.08.05 |
[DB][MySQL] 공백과 Null 모두 제외하기 (0) | 2025.07.16 |
[DB][Oracle] LISTAGG(DISTINCT ...) (0) | 2025.07.04 |