티스토리 뷰

데이터의 크기가 크면 varchar로 안들어감...    [varchar2는 최대 4000까지 설정을 할 수 있다.]

그럴때, CLOB을 사용한다.

CLOB은 최대 4GB까지 입력할 수 있다. 


하지만, CLOB은 검색하기가 까다롭다고 한다.

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/*
    # CLOB 형 데이타 SELECT
    DBMS_LOB.SUBSTR(
     CLOB 타입 컬럼 명
    , 추출할 문자열 길이(숫자) OR 전체 문자길이( DBMS_LOB.GETLENGTH(CONTENTS) )
    , 전체 값 출력 : 1
    )
    전체 문자길이( DBMS_LOB.GETLENGTH(CONTENTS) ) 사용시 아래와 같은 메세지 발생할 수 있음.
    -- ORA-06502: PL/SQL: 수치 또는 값 오류: 문자열 버퍼가 너무 작습니다
   ==>  DBMS_LOB.GETLENGTH(CONTENTS)의 길이가 4000이상인 경우 발생하는 듯함. 원인은 아래 내용 참조
*/
 
SELECT  DBMS_LOB.SUBSTR(CONTENTS, 10001) AS CONT_SUB   -- 1000 개까지 출력(문자열)
        , DBMS_LOB.INSTR(CONTENTS, 'TEST'11) AS CONT_INS   -- 검색 문구의 위치 출력(숫자)
  FROM CLOB_TABLE
  WHERE DBMS_LOB.INSTR(CONTENTS, 'TEST'11> 0             -- 검색 문구가 존재할때
;
cs


반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함