반응형
[Oracle] "ORA-06502: PL/SQL: 수치 또는 값 오류: 문자열 버퍼가 너무 작습니다" 오류 해결
CLOB 타입의 데이터를 조회하는 과정에 발생한 오류이다.
전자정부 프레임워크 SpringMVC 모델의 프로젝트의 MyBatis 를 사용하여 DB 데이터를 조회한 쿼리를 VO 객체에 담아 View에 보내는 과정이었다.
CLOB 타입의 데이터를 VO에 담기 위해서는 다음과 같은 쿼리를 작성했다.
SELECT SEQ_NO
, SUBJECT
, DBMS_LOB.SUBSTR(CONTENTS_CLOB, 4000, 1) AS CONTENTS
FROM WEB_OP_BBS
CONTENTS_CLOB 컬럼의 컨텐츠를 지정 바이트 (4000) 만큼 잘라오는 쿼리이다.
실제로 CONTENTS_CLOB 에 이미지 BYTE 데이터가 들어가이쓰었는데, 4000바이트 크기보다 훨씬 커서 담을 수 없어 나는 에러였다.
이미지 바이트 크기를 확인한 후 바이트 크기를 수정하였다.
SELECT SEQ_NO
, SUBJECT
, DBMS_LOB.SUBSTR(CONTENTS_CLOB, 10000, 1) AS CONTENTS
FROM WEB_OP_BBS
728x90
반응형
'Database > SQL' 카테고리의 다른 글
[Oracle] TRUNC 함수 사용방법 (날짜, 시간, 요일, 숫자) (0) | 2021.11.10 |
---|---|
[ORACLE] 집계함수의 SUMMARY 구하기 - ROLLUP 함수 (0) | 2021.10.28 |
[MySQL] 현재 날짜와의 차이 계산하기 : 일 차, 주 차, 월 차 (2) | 2021.01.26 |
[Oracle] 행열 변환, 오라클 PIVOT 테이블 사용 방법 (0) | 2021.01.13 |
[MySQL] 원하는 구분자 기준으로 문자열 자르기 : SUBSTRING_INDEX (0) | 2020.11.06 |
댓글