ORACLE

SQL NUMBER, CHAR, VARCHAR, DATE 데이터타입

다룽_ 2021. 4. 2. 00:29
728x90

- NUMBER

NUMBER{  (  P  [, S ]  )  }

* P :  표현할 수 있는 전체 숫자 자리 수 (1 ~ 38)

* S : 소수점 이하 자리 수(-84 ~127)

 

EX)

더보기
실제 값 데이터 타입 저장 되는 값 설명
12345.678 NUMBER 12345.678  
NUMBER(7) 12346 7자리. 정수 5자리이므로 5개만 표현. 첫번재 소수 반올림.
NUMBER(7, 1) 12345.7 7자리. 정수 5자리와 소수 1자리만 표현. 두번째 소수 반올림
NUMBER(7, 3) 오류 7자리. 정수 5자리와 소수 3자리는 총 8자리 필요.
NUMBER(5, -2) 12300 S가 -2이면 반올림하여 소수점 왼쪽 둘째 자리까지 표현한다.
0.1234 NUMBER(4, 5) 오류 유효숫자 4개는 맞지만 소수점 아래 4자리까지만 있어서 S에 5 입력시 오류
0.01234 NUMBER(4, 5) 0.01234 유효숫자 4개, 소수점 아래 5자리 표현
0.0001234 NUMBER(3, 7) 오류 소수점 이하 일곱 째 자리 까지 유효숫자 4개. P=3 오류.
0.00001234 NUMBER(3, 7) 0.0000123 소수점 이하 일곱 째 자리까지 유효숫자 3개이므로 마지막 4 제외

 

 

- CHARACTER

1. CHAR

CHAR( SIZE [ ( byte | char ) ]

* SIZE : 포함될 문자(열)의 크기

*지정한 크기보다 작은 문자(열)가 입력되면 남는 공간은 공백으로 채움

*데이터는 "를 사용하여 표기하고 대,소문자를 구분함

 

EX)

더보기
실제 값 데이터 타입 저장되는 값 설명
KIMCHI CHAR(6) KIMCHI  
CHAR(9) KIMCHI*** 공백 3칸 (3byte)
CHAR(3) 오류 저장되는 글자는 6글자인데 공간은 3자리라 오류
김치 CHAR(6) 김치 공간에 딱 맞음 ( 한글은 한 글자당 3byte )
CHAR(9) 김치*** 공백 3byte
CHAR(3) 오류 저장되는 글자는 총 6byte, 사용가능 공간은 3byte로 오류

 

 

2. VARCHAR2

VARCHAR2( SIZE [ ( byte | char ) ]

* SIZE : 포함될 문자(열)의 크기

* 크기가 0인 값은 NULL로 인식

* 데이터는 "을 사용하여 표기하고 대,소문자를 구분함

 

EX)

더보기
실제 값 데이터 타입 저장되는 값 설명
KIMCHI VARCHAR(6) KIMCHI  
VARCHAR(10) KIMCHI  
VARCHAR(3) 오류 저장되는 글자는 6byte인데 공간은 3byte이므로 오류
김치 VARCHAR(6) 김치 한글은 글자 당 3byte이므로 공간에 딱 맞음
VARCHAR(10) 김치  
VARVHAR(3) 오류 저장되는 글자는 총 6byte인데 공간은 3byte이므로 오류

 

728x90

 

3. NVARCHAR

N VAR CHAR 2 (n)

3-1a) 'N'이 있을 경우

 유니코드 문자형

 모든 문자 2byte

 크기를 글자 수 단위로 받음

 

3-1b) 'N'이 없을 경우

 한글/한자 : 3byte

 영어/숫자/기호 : 1byte

 크기를 바이트 수 단위로 받음

 

3-2a) 'VAR'가 있을 경우

 가변 문자

 

3-2a) 'VAR'가 없을 경우

 고정 문자

 

3-3a) '2'가 있을 경우

 4000byte

 

3-3a) '2'가 없을 경우

 2000byte

 

3-4) (n) : 크기

 

 

-DATE

DATE

* 일자(세기/년/월/일) 및 시간(시/분/초) 정보 관리

* 기본적으로 화면에 년/월/일 정보만 표기

* 날자 연산 및 비교 가능

 

EX)

더보기
연산 결과 타입 설명
날짜 + 숫자 DATE 날짜에서 숫자만큼 며칠 후
날짜 - 숫자 DATE 날짜에서 숫자만큼 며칠 전
날짜 - 날짜 NUMBER 두 날자의 일수 차
날짜 + 숫자/24 DATE 날짜 + 시간

 

'ORACLE' 카테고리의 다른 글

SQL 정의, 데이터 타입  (0) 2021.03.31