LOB 데이터 타입

 

*개요

-텍스트, 그래픽, 이미지, 동영상, 사운드 등과 같이 구조화되지 않은 대용량의 텍스트나 멀티미디어 데이터를 저장하기 위한 데이터 타입

-최대 4GB까지 저장

 

*종류

-BLOB

。그래픽 이미지, 동영상, 사운드와 같이 구조화되지 않은 바이너리 데이터를 저장하기 위해 사용

-CLOB

。e-Book, html과 같은 대용량의 텍스트 데이터 저장

-NCLOB

。국가별 문자셋(유니코드) 데이터 저장

-BFILE

。바이너리 데이터를 파일 형태로 저장, 읽기 전용이므로 내용 변경 불가능

 

 

 

 

 

DATE 데이터 타입

 

*기능

-TO_DATE 함수 사용 가능

  。문자 형태로 저장된 데이터를 날짜 형식으로 변환(6장에서 자세히 설명)

-SYSDATE 함수 사용 가능

  。시스템의 현재 날짜와 시간을 반환하는 함수

-주의

  。날짜 데이터 입력시 월, 일을 지정하지 않으면 입력되는 시점을 기준으로 해당 월과 1일이 입력, 시간을 지정하지 않으면 12:00:00로 입력

  。시간 정보가 입력된 경우에는 '=' 비교시 시간 정보도 함께 비교

 

 

DATE 데이터 타입

 

*개요

-세기, 년도, 월, 일, 시간, 분, 초의 날짜와 시간 정보를 저장하기 위한 데이터 타입

-7비트의 고정길이 필드에 저장

-날짜나 시간에 대한 연산이나 이력 정보를 관리하기 위해 사용

-퍼스널 오라클의 기본 날짜 형식 : YY/MM/DD 형식

 。예 : '년/월/일(05/0101)'

 

 

 

NUMBER 데이터 타입

 

*개요

 

-숫자를 저장하며, 가변 길이 데이터 타입으로 최대 38 자리까지 저장 가능

-저장 가능한 숫자의 범위

 

 

-소수는 NUMBER(precision, scale) 형식으로 입력

。지정된 자리 이하에서 반올림되어 저장

。precision : 소수점을 포함하는 전체 자리 수

。scale : 소수점 이하 자리 수

。precision을 지정하지 않고 숫자를 입력하는 경우

   -입력되는 숫자 값을 크기만큼 저장공간이 할당됨

。scale을 지정하지 않고 소수점을 입력하는 경우

   -소수점 이하는 반올림되어 정수 값만 저장됨

 

 

문자타입 비교사례

 

 

 

CHAR vs VARACHAR2

 

VARCHAR2 특성 및 비교 메카니즘

 

-Variable length character string(최대 4,000 characters)

-Internal code:1(Datatype Code)

-데이터가 가변인 경우나 Null 값 입력이 많은 경우에 적용 유리

-다른 타입에 비해 제한이 적고 일부 입력시 뒷 부분은 NULL

-지정된 길이보다 긴 데이터 입력시 오류발생

-Chaining 현상이 발생할 가능성이 많으나 이는 적절한 PCTFREE값을 설정하거나 default constraint를 설정함으로써 피할 수도 있다.

-참고로 어떤 E컨설팅에서 수행하는 project의 경우는 모두 VARCHAR2 type을 사용하는 경우도 있음

-서로 다른 문자가 나올 때까지 비교

-길이가 다르면 짧은 것이 끝날 때까지만 비교

-길이도 같고 Type도 같다면 비교시 같다고 판단

 

 

 

 

 

CHAR vs VARCHAR2

 

*CHAR 특성 및 비교 메카니즘

-Fixed length character string(최대 2,000 characters)

-Internal code: 96(Datatype Code)

-데이터가 고정길이인 경우 적용

-컬럼의 길이가 짧고 거의 모든 데이터의 길이가 일정 Size를 넘는 경우에 적용하면 이득이 있다.

-부분적으로 입력시 나머진 BLANK가 채워짐

-전혀 값을 주지 않으면 Null 상태로 입력(Nullable 경우)

-특히 가변길이로 지정시 많은 Chain 현상 발생이 우려되는 경우나 Row 생성후 바로 데이터 입력시에는 default constraint ' (blank)를 지정하는 것도 좋은 방법임

-지정된 길이보다 긴 데이터 입력시 에러 발생

-길이의 편차가 심한 경우에는 block 저장 공간의 낭비 및 수행 속도 저하를 가져옴

-Length가 서로 다르면 짧은 쪽에 space를 추가하여 길이를 같게 한 후 비교함

-서로 다른 문자가 나올 때까지 비교(크기 비교도 같음)

-BLANK의 수만 다르다면 서로 같은 값

 

 

 

상수값, CHAR, VARCHAR2 비교

 

*상수값과 CHAR와 VARCHAR2 데이터 타입의 비교

 

 

+ Recent posts