[Oracle] 오라클 데이터타입(DataType) 총정리

데이터 타입

데이터 타입이란 컬럼이 저장되는 데이터 유형을 말합니다. 오라클에서 기본적으로 제공하는 기본 데이터 타입과 이 기본데이터 타입을 혼합하여 만들 수 있는 사용자 정의 데이터 타입으로 구분할 수 있습니다. 기본 데이터 타입은 문자형, 실수, 소수, 자료형 등의 여러 데이터를 식별하는 타입입니다.

 

문자 데이터 타입

데이터타입   
 CHAR(n)  고정길이 문자 / 최대 2000byte / 디폴트 값은 1byte 
 VARCHAR2(n)  가변길이 문자 / 최대 4000BYTE / 디폴트 값은 1byte 
 NCHAR(n)  고정길이 유니코드 문자(다국어 입력가능) / 최대 2000byte / 디폴트 값은 1byte 
 NVARCHAR(n)  가변길이 유니코드 문자(다국어 입력가능) / 최대 2000byte / 디폴트 값은 1byte 
 LONG   최대 2GB 크기의 가변길이 문자형 
 CLOB  대용량 텍스트 데이터 타입(최대 4Gbyte)
 NCLOB  대용량 텍스트 유니코드 데이터 타입(최대 4Gbyte)

가변길이란 실제 입력된 데이터 길이에 따라서 크기가 변하는 것을 의미합니다.

 

ex) 예를들어 가변형 문자형 데이터타입인 Varchar2에 10이라는 데이터 공간을 할당하고 abc라는 데이터를 입력했다고 치면 그 데이터는 10이라는 데이터 공간을 할당했기에 10byte까지만 데이터를 입력받을 수 있고 3글자만 입력되었으므로 그 데이터공간은 3byte가 됩니다. 반대로 고정형 문자형 데이터타입인 CHAR에 10이라는 데이터 공간을 할당하고 마찬가지로 abc라는 데이터를 입력했다고 치면 그 데이터는 3글자만 입력되었지만 데이터 공간은 10byte가 됩니다. 남 / 여 같이 1글자만 들어올 수 있는것이 아니라면 대부분 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 

숫자 타입은 4가지 타입이 있습니다. 대부분 NUMBER형을 사용합니다. P는 소수점을 포함한 전체 자릿수를 의미하고, S는 소수점 자릿수를 의미합니다. NUMBER는, 가변숫자이므로 P와S를 입력하지 않으면 저장 데이터의 크게에 맞게 자동으로 조절됩니다.

 

날짜 데이터 타입

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

가장 일반적으로 쓰는 데이터타입은 DATE타입입니다.

 

LOB 데이터 타입

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

LOB이란 Large Object의 약자로 대용량 데이터를 저장할 수 있는 데이터 타입입니다. 일반적으로 그래픽, 이미지, 사운드등 비정형 데이터를 저장할때 L,OB타입을 사용합니다. 문자형 대용량 데이터는 CLOB나 NCLOB, 그래픽, 이미지, 동영상등의 대이터는 BLOB를 주로 사용합니다.

 

댓글

Designed by JB FACTORY