데이터 타입
varchar2 |
문자형 데이터만 저장 |
char |
문자형 데이터만 저장 |
number |
숫자 형식의 데이터를 저장 |
date |
일자에 대한 내용을 저장 |
varchar2 와 char 의 차이점
저장공간을 미리 확보하는가 아닌가의 차이
varchar2 - 가변 길이 문자 타입의 컬럼 타입 , varchar(30) 으로 지정해도 10의 사이즈인 데이터가 들어오면 10만큼 사용
char - 고정 길이 문자 타입 , char(30) 으로 지정한다면 데이터의 사이즈와 상관없이 30의 공간을 사용
추가 데이터 타입
BLOB |
4GB 이내의 바이너리 데이터 저장 |
CLOB |
4GB 이하 크기의 문자 데이터 저장 |
LONG |
2GB 이하 크기의 문자 데이터 저장 |
RAW , LONG RAW |
이미지 , 비디오 파일 과 같은 로우 바이너리 파일 저장 |
ROWID |
로우아이디 값 저장 |
TIMESTAMP |
날짜 및 시간을 저장 |
BFILE |
최대 4GB 까지 외부 파일로 저장되는 데이터타입 |
컬럼 타입 지정 시 주의해야할 상황
1. 일자 저장 시 DATE 타입 , VARCHAR2 타입 , CHAR 타입
DATE 타입 선정 시 , DATE 관련 함수들 사용 가능 = 일자 계산이 많을 때 사용
VARCHAR2 또는 CHAR 타입 선정 시, =연산자를 이용하여 손쉽게 원하는 데이터를 찾을 수 있어 인덱스 사용에 용이하다. = 인덱스가 필요할 때 사용
2. 숫자 저장 시 NUMBER 타입 , VARCHAR2 타입 , CHAR 타입
NUMBER 타입 선정 시 , 산술 연산에 유리함, VARHCAR2, CHAR 에 비해 저장 공간을 적게 사용
VARCHAR2 또는 CHAR 타입 선정 시, LIKE 등의 문자 컬럼 연산자를 많이 사용할 때 해당 데이터 타입 사용
3. 문자 저장 시 VARCHAR2 타입 , CHAR 타입
VHARCHAR2 타입 선정 시 , 저장되는 데이터가 길거나 짧을 수 있기 때문에 가변 길이일 때 해당 데이터 타입 사용
CHAR 타입 선정 시 , 사원번호 , 주민번호 등 동일한 길이의 데이터가 저장될 때 CHAR 타입 사용
4. 여러 테이블에서 원하는 컬럼의 값을 추출하기 위해선 테이블을 조인할 텐데,
조인을 수행하기 위해서는 각 테이블에 연결할 수 있는 조인 컬럼은 동일한 컬럼 타입으로 설정되어야 함.