오라클 데이터타입

이경현·2025년 6월 13일

1) 데이터 타입

  • CHAR 고정길이 문자 DATA를 4000BYTE 저장

  • VARCHAR2 가변길이 문자 DATA를 4000BYTE 저장

  • NUMBER 가변길이 숫자값을 -38 ~ +38자리수를 저장, (자릿수/2)+1 ,number(1)는 (1/2)+1 = 1.5 반올림해서 2byte가 됨.

  • DATE 날짜를 저장

  • TIMESTAMP 년, 월, 일, 시, 분, 초, mili-second까지 보여준다.

  • CLOB: BINARY DATA를 4GB 저장, 문자 대형 객체(Character). Oracle Server는 CLOB과 VARCHAR2 사이에 암시적 변환을 수행.

  • BLOB: 이진 대형 객체 (Binary). 이미지, 동영상, MP3 등

  • NCLOB: 내셔널 문자 대형 객체 (National). 오라클에서 정의되는 National Character Set을 따르는 문자.

  • BFILE: OS에 저장되는 이진 파일의 이름과 위치를 저장. 읽기 전용 모드로만 액세스 가능.

2) 데이터 타입 변환.

  • TO_CHAR(char_field) 숫자나 날짜를 문자열로 변환
  • TO_DATE(char_field) 문자를 날짜로 변환
  • TO_NUMBER(char_field) 문자를 숫자로 변환
  • 날짜-> 문자

    	SELECT SYSDATE FROM DUAL    --실제 기본 날짜 가져오기
    	SELECT TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS') SYS_DATE24 FROM DUAL    -- 24시로
    	SELECT TO_CHAR(SYSDATE, 'YYYYMMDDHH12MISS') SYS_DATE12 FROM DUAL    -- 12시간
  • 문자-> 날짜

    	SELECT TO_DATE('20180401','YYYY-MM-DD') FROM DUAL;

3) DUAL 테이블????

dual테이블은 산술 연산이나 가상 컬럼 등, 값을 한번만 출력하고 싶을 때. 

4) 문자열 byte 크기 조회 쿼리..

select vsize('길은 내 앞에 놓여있다. :: ') as byteSize from dual;

5) DB 별 용량 체크 쿼리

SELECT OWNER,SEGMENT_NAME,SEGMENT_TYPE,SUM(BYTES)/1024/1024 AS MB
      FROM DBA_SEGMENTS
     WHERE OWNER = 'DH'      --DB
       AND SEGMENT_TYPE = 'TABLE'  
     GROUP BY OWNER,SEGMENT_NAME,SEGMENT_TYPE
     ORDER BY MB DESC

6) 오라클 버전 확인 쿼리

SELECT * FROM v$version WHERE banner LIKE 'Oracle%';

0개의 댓글