DB/오라클(Oracle)

오라클 데이터타입(Data Type) 정리

푸코잇 2023. 11. 5. 20:03
728x90

 

데이터타입(Data Type) 이란?

 

 

자료형으로도 불리며 프로그래밍 언어에서 실수치, 정수, 불린 등 여러 종류의 데이터를 식별하는 분류이다.

데이터를 효율적으로 처리하기 위해 적절한 데이터타입을 선정할 필요가 있다.

오라클에서 제공하는 데이터타입은 무엇이 있는지 알아보자.

 

문자 데이터타입

 

데이터타입 설명
CHAR(n) 고정길이 문자
최대 2000byte
디폴트 값은 1byte
VARCHAR2(n) 가변길이 문자
최대 4000byte
디폴트 값은 1byte
NCHAR(n) 고정길이 유니코드 문자(다국어 입력가능)
최대 2000byte
디폴트 값은 1byte
NVARCHAR(n) 가변길이 유니코드 문자(다국어 입력가능)
최대 2000byte
디폴트 값은 1byte
LONG 가변길이 문자
최대 2GB
테이블에서 1개만 사용 가능
CLOB 가변길이 대용량 텍스트 데이터타입
최대 4GB
NCLOB 가변길이 대용량 텍스트 유니코드 데이터타입
최대 4GB

 

문자 데이터타입에서 고정길이와 가변길이를 이해해야 한다

가변길이는 실제 입력된 데이터의 길이에 맞춰 데이터타입의 크기가 변하는 것을 의미한다.

예를들어 CHAR(3), VARCHAR(3)에 'a' 데이터를 넣었다면 다음과 같이 된다.

  • CHAR(3)는 고정길이이므로 2byte의 공간이 낭비된다.
  • VARCHAR(3)는 가변길이이므로 1bye만 사용한다.

주민등록번호, 전화번호와 같이 길이가 고정되어있는 데이터는 CHAR를 사용하고,

데이터의 길이가 고정되어있지 않다면 VARCHAR2를 사용하면 된다.

 

숫자 데이터타입

 

데이터타입 설명
NUMBER(P,S) 가변숫자
P : 1 ~ 38 (디폴트 값은 38)
S : -84 ~ 127 (디폴트 값은 0)
최대 22byte
FLOAT(P) NUMBER의 하위타입
P : 1~128 (디폴트 값은 128)
최대 22byte
BINARY_FLOAT 32비트 부동소수점
최대 4byte
BINARY_DOUBLE 64비트 부동소수점
최대 8byte

 

숫자 데이터타입은 NUMBER를 주로 사용한다.

P는 소수점을 포함한 전체 자릿수를 의마한다.

S는 소수점 자릿수를 의미한다.

가변숫자이므로 P와 S를 입력하지 않으면 저장 데이터의 크기에 맞게 할당된다.

 

날짜 데이터타입

 

데이터타입 설명
DATE BC 4712년 1월 1일부터 9999년 12월 31일까지 표현
연, 월, 일, 시, 분, 초까지 입력 가능
TIMESTAMP 연, 월, 일, 시, 분, 초, 밀리초까지 입력 가능

 

 

LOB 데이터타입

 

데이터타입 설명
CLOB 문자형 대용량 객체 고정길이와 가변길이 문자집합 지원
NCLOB 유니코드 지원하는 문자형 대용량 객체
BLOB 이진형 대용량 객체
BFILE 대용량 이진 파일에 대한 위치, 이름 저장

 

LOB(Large Object) 데이터타입은 대용량 데이터를 저장할 수 있다.

일반적으로 그래픽, 이미지, 사운드 등 비정형 데이터를 저장할 때 사용한다.

문자형 대용량 데이터는 CLOB, NCLOB를 사용하고

그래픽, 이미지, 동영상 데이터는 BLOB를 사용한다.