Oracle/SQL2018. 10. 15. 23:58

CLOB, BLOB 타입 열에 4000자 이상의 더미 데이터를 생성해보자.


예제를 위해 아래와 같이 테이블을 생성하자.
-- 1
DROP TABLE t_clob PURGE;
DROP TABLE t_blob PURGE;

CREATE TABLE t_clob (c1 CLOB);
CREATE TABLE t_blob (c1 BLOB);

4000자 이상의 CLOB 값을 생성하기 위해서는 TO_CLOB 함수를 사용해야 한다. BLOB 값은 XMLSERIALIZE 함수로 생성할 수 있다.

-- 2
INSERT INTO t_clob
VALUES (TO_CLOB (LPAD ('X', 4000, 'X')) || LPAD ('X', 4000, 'X'));

INSERT INTO t_blob
VALUES (XMLSERIALIZE (CONTENT XMLTYPE (   TO_CLOB ('')
                                       || LPAD ('X', 4000, 'X')
                                       || LPAD ('X', 4000, 'X')
                                       || '')
                      AS BLOB));

COMMIT;

아래 쿼리로 4000자 이상의 더미 데이터가 생성된 것을 확인할 수 있다.

-- 3
SELECT LENGTH (c1) AS c1 FROM t_clob;

  C1
----
8000

1개의 행이 선택되었습니다.

SELECT LENGTH (c1) AS c1 FROM t_blob;

  C1
----
8007

1개의 행이 선택되었습니다.


'Oracle > SQL' 카테고리의 다른 글

화물수량별 차등운임 계산  (0) 2018.12.27
XMLTABLE 함수로 DUMMY 데이터 생성  (0) 2018.12.17
NLS_DATE_FORMAT 파라미터와 데이터 변환  (0) 2018.09.01
날짜 기간 조회  (0) 2018.03.07
랜덤 Top-N 쿼리  (0) 2018.03.04
Posted by 정희락_