티스토리 뷰

프로그램개발

Oracle Data Type

인생참!! 2023. 11. 17. 17:01
728x90

오라클 데이터 타입 정의

1. 데이터타입(DataType) 개요

- 데이터 타입(DataType)은 테이블 칼럼을 정의하거나, 프로시저/함수의 인자에 사용되는 값이 저장되는 방식을 결정한다.
- Oracle에서는 데이터타입에 따라 의미상 동일한 값이 다르게 처리된다.

ex)

NUMBER 데이터타입에서는 더하기, 빼기 가능하나
RAW 데이터타입에서는 더하기, 빼기가 불가능하다.

2. 데이터타입(DataType) 종류

- 내장 데이터타입(Built-In Data Type) - Scalar(스칼라) Data Type 성격을 가짐.

 

1) 문자 데이터타입(Character Data Type)

데이터 타입 설명
CHAR(n) 고정길이 문자 데이터타입
최대크기 : 2,000byte
최소크기 : 1byte
VARCHAR2(n) 가변길이 문자 데이터타입
최대크기 : 4,000byte
최소크기 : 1byte
NCHAR(n) 고정길이 유니코드 문자 데이터타입 (다국어 지원)
최대크기 : 2,000byte
최소크기 : 1byte
NVARCHAR2(n) 가변길이 유니코드 문자 데이터타입 (다국어 지원)
최대크기 : 4,000byte
최소크기 : 1byte
LONG 최대 2GB 크기의 가변길이 문자형
CLOB 대용량 텍스트 데이터를 저장하기 위한 데이터타입 
최대크기 : 4GB
NCLOB 대용량 텍스트 유니코드 데이터타입
최대크기 : 4GB

 

2) 숫자 데이터타입(Number Data Type)

데이터 타입 설명
NUMBER(p, s) Precision과 Scale에 의해 표현 가능한 가변숫자 데이터타입
p - 소수점을 포함한 전체 자릿수 (1 ~ 38), 기본 38 
s - 소수점 이하 자릿수 (-84 ~ 127) 까지 지정
FLOAT(p) NUMBER의 하위타입
p - 1 ~ 128까지 지정가능 기본 128
이진수 기준이며, 최대 22byte 
BINARY_FLOAT 32bit 부동소수점 수, 최대 4byte
BINARY_DOUBLE 64bit 부동소수점 수, 최대 8byte

 

3) 날짜 데이터타입(Date Data Type)

데이터 타입 설명
DATE 날짜와 시간을 고정길이로 저장하기 위한 데이터타입
TIMESTAMP(n) DATE 데이터타입의 확장 형태
최대 9자리(nano second)까지 표현가능

 

4) BINARY Data Type

   
BLOB / BFILE LOB(Large Object) 데이터타입의 일부로, 최대 4GB까지의 바이너리 데이터를 저장 가능
BLOB 이진형 대용량 객체
BFILE은 대용량 이진 파일에 대한 로케이터(위치,이름) 저장, 최대4GB 저장 가능
RAW / LONG RAW 바이너리 이미지 데이터를 저장하는데 사용되는 데이터타입으로 현재는 역 호환성를 위해 사용
RAW / LONG RAW 대신 BLOB 및 BFILE 데이터타입을 사용하는걸 권고함

 

- 사용자정의 데이터 타입(User Defined Data Type)

 

1) OBJECT Type

- Object Type은 사용자가 정의한 복합 데이터타입으로(Composite Data Type) 데이터타입과 데이터를 조작하기 위한 

새로운 데이터 타입이다.

 

2) VARRAY

- 순서를 갖는 엘리먼트들의 1차원 배열을 저장하는 데 사용

- 4,000byte 미안은 IN-LINE 형태로 저장되며, 4,000byte 이상이면 OUT-OF-LINE 형태로 저장됨.

 

3) NESTED TABLE

- 테이블을 하나의 칼럼에 저장할 때 사용

- 순서를 지정하지 않은 레코드나 행의 집합이며, 행은 동일한 구조를 가짐

 

4) REF

- 데이터베이스 테이블에 저장된 object에 대한 참조이며, object는 아님

- Relational Column으로 사용될 수 있으며, Object type을 구성하는 데이터타입으로도 사용됨

- Object Table에 저장된 가각의 객체는 OID(Object  ID)를 갖는다.

- OID는 관계형 데이터베이스에서처럼 다른 객체에서 참조할 수 있다.

 

 

 

 

728x90
250x250
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Total
Today
Yesterday