반응형


CLOB 데이터를 이용해서 신청서 양식을 만들고 있는데..
별도의 관리자 페이지 없이 곧바로 파일 저장을 시도하니 내용이 잘리더군요.

처음에는 cache 크기가 작아서 그런가 해서 확인해 봤는데
(Option > Options... > Unload Tool > General )

Long Size가 8000 으로 잡혀있더군요..

그런데 대부분 데이터가 8000 바이트가 못 되는 내용들이라
여기는 조정을 해도 크게 차이가 없었습니다.

그러던 중 오라클에서 LOB 패키지를 제공하는 것을 알았습니다.

DBMS_LOB.SUBSTR(SQL_FULLTEXT. DBMS_LOB.GETLENGTH(SQL_FULLTEXT), 1)

SQL_FULLTEXT: CLOB 컬럼명
DBMS_LOB.GETLENGTH(SQL_FULLTEXT): 문자열 크기
1: offset

이를 바탕으로 다음과 같은 방식으로 쿼리를 만들었습니다.



select title, dbms_lob.substr(content, dbms_lob.getlength(content), 1) from bbs


이 쿼리를 Unload 툴 (Tools > Unload Tool)에서 실행, 엑셀 파일로 저장하니
입력된 CLOB 내용들이 모두 저장이 되더군요.

CLOB 데이터 저장하실 때 참고하세요 ^^

Orange for oracle: 5.0.7
Oracle: 10g

참고
http://truepro.tistory.com/?page=2

반응형

+ Recent posts