[Oracle] 오라클 #2 SQL 자료형

SQL 자료형

    DBMS에 따라 차이가 심함(서로호환안됨)

    오라클 자료형


1. 숫자형

    a.NUMBER (정수+실수)

     -유효자리 38자리 이하의 숫자를 표현

     -20Byte

     -number(precision, scale)

     -precision : 소수 이하를 포함한 전체 자리수(1~ 38자리)

     -scale : 소수점 이하 자릿수

     

ex)

     number : 38자리까지 표현 가능한 모든 숫자(정수,실수포함)

     number(3) : 표현가능한 숫자의 자리수, 최대 3자리까지 표현 가능한 숫자.

     number(4,2) : 최대4자리, 소수이하자리 포함(-99.99 ~ 99.99)

     number(10,3) : -9999999.999 ~ 9999999.999

    -숫자형 리터럴 표현

     1. 정수 : 10 그냥적으면됨

     2. 실수 : 3.14 그냥 적으면됨


2. 문자형

    -문자열 + 문자형

    -자바의 String

    

    a. CHAR, NCHAR

     -고정자리수

     -char(n) : n(1이상의 정수)

     ex) char(3) : 3바이트까지 저장할 수 있는 문자열

      최대크기 : 2000바이트

      최소크기 : 1바이트

      ex) char(3) : 3바이트까지 저장할 수 있는 문자열

      ex) char(10) :10바이트까지 저장할 수 있는 문자열


    b. VARCHAR2, NVARCHAR2

     -가변자리수

     -varchar2(n) : n(1이상의 정수) n자리 문자열

     -최대크기 : 4000바이트

     -최소크기 : 1바이트

     ex)varchar2(3) : 3바이트까지 저장할 수 있는 문자열

     ex)varchar2(10) : 영문자(1자~10자) , 한글(1자~3자)


    c. N의 유무차이

     -National 약자 > 유니코드 지원.

     -N이 붙은 자료형  : 모든 문자를 2바이트로 저장.

     -N이 안붙은 자료형: DBMS의 기본 인코딩 방식으로 저장.(UTF-8:현재)

     -"여러가지 문자"가 섞여 있을 때 사용.

     

     **-nchar(n), nvarchar(n) -> n : 문자수...n개의 글자..

     

     ex) char(10) > '홍길동' > 9바이트

     ex) nchar(10) > '홍길동' > 6바이트

     

     

3. 날짜 시간형


    a. DATE

     -날짜 + 시간 포함.

     -Calendar와 유사

     -7byte

     -최소 단위 : 초까지


    b. TIMESTAMP

     -DATE 버전업

     -나노초(10-e9) 표현


    c. INTERVAL

     -시간

     -틱값저장.


4. 대용량 자료형

    a. lob(롭),Large Object

        1. BLOB

        2. CLOB



오라클 기본 인코딩

 1.        ~8i   : EUC-KR

 2. 9i ~ 현재  : UTF-8


- SQL은 대소문자를 구분하지 않는다. 하지만 업계에서 관습적으로 정해진 규칙이 있다.(회사마다 해당 할수도 안할수도 있음)
1. SQL키워드는 대문자.
2. 객체식별자는 소문자.  



댓글

Designed by JB FACTORY