* 오라클 데이터 타입
- 관계형 데이터베이스에서 제공하는 데이터 타입은 CHAR, VARCHAR2, NUMBER, DATA, LONG, RAW, ROWID 타입으로 분류한다.
- 원하는 정보를 가장 효율적으로 처리하기 위해서 적절한 데이터 타입의 선정이 필요하다.
- 적절하지 못한 데이터 타입의 선정은 수행 속도를 나쁘게 하고 불필요한 자원을 낭비를 가져온다.
* VARCHAR2 타입
- 가변길이 문자형 데이터 타입
- 최대 길이 : 2000 바이트(반드시 길이 지정)
- 다른 타입에 비해 제한이 적다
- 일부만 입력 시 뒷부분은 NULL
- 입력한 값의 뒷부분에 있는 BLANK도 같이 입력
- 전혀 값을 주지 않으면 NULL 상태 입력
- 지정된 길이보다 길면 입력 시 에러 발생
- 컬럼 길이의 편차가 심한 경우, NULL로 입력되는 경우가 많은 경우 VARCHAR2 사용
* NUMBER 타입
- 숫자형 데이타 타입, 음수, ZERO, 양수 저장
- 전체 자리수는 38자리를 넘을 수 없다
- 소수점이 지정되지 않았을 때 소수점이 입력되거나 지정된 소수점 자리 이상 입력되면 반올림되어 저장
- 지정한 정수 자리수 이상 입력 시 에러 발생
- 연산이 필요한 컬럼은 NUMBER타입으로 지정한다.
- NUMBER(p, s)로 지정 시 p는 s의 자릿수를 포함한 길이므로 감안하여 P의 자리수를 결정
- NUMBER타입은 항상 가변 길이므로 충분하게 지정할 것
* DATE 타입
- 2기가 바이트의 가변길이 문자 저장
- VARCHAR2와 유사한 특징을 가진나 아래와 같은 제한사항이 있다.
1) 하나의 테이블에 하나의 LING 타입만 사용 가능
2) (NOT) NULL을 제외한 다른 제약 조건은 지정할 수 없다.
3) 인덱스를 만들 수 없다
4) PROCEDURE 나 Stored FUNCTION에서 LONG 타입의 변수를 받을 수 없다
5) SELECT문 내에서 WHERE, GROUP BY, ORDER BY, CONNECT BY, DISTINCT 불가
6) SQL Function(SUBSTR, REPLACE,..) 사용 불가
7) CREATE TABLE.. AS SELECT... 사용 불가
* RAW, LONG RAW, ROWID 타입
- 그래픽 IMAGE 나 디지털 SOUND를 저장
- HEXA-DECIMAL 형태로 RETURN
- RAW는 VARCHAR2와 유사
1) 저장과 추출만 가능하고, DATA를 가공할 수 없다.
2) LONG RAW는 LONG과 같은 제한 사항을 같는다.
'Operating System > ORACLE' 카테고리의 다른 글
[ORACLE] 오라클 서버 기본 구조 (0) | 2022.04.06 |
---|---|
[ORACLE] MERGE (0) | 2022.04.05 |
[ORACLE] TABLE 생성 (0) | 2022.04.01 |
[ORACLE] TABLESPACE,USER 생성 및 삭제 (0) | 2022.03.31 |
[ORACLE] 멀티테넌트 아키텍처 (2) | 2022.03.15 |