728x90
반응형
ORA-06502: PL/SQL: 수치 또는 값 오류
UTL_SMTP으로 메일발송을 하기위해 html 의 값을 clob으로 넣어 발송시 오류가 발생 하였다.
UTL_SMTP.write_raw_data 으로 clob 데이터 전송시 최대크기는 32K(32767byte)를 넘어서 발생 하여 아래와 같이 수정 하였다.
V_HTML은 html 형식이 들어가 있다.
******생략
V_HTML CLOB;
ClobLen PLS_INTEGER;
amount BINARY_INTEGER := 8192;
buffer VARCHAR2(16384);
offset PLS_INTEGER := 1;
******생략
V_HTML := '<html>' || LV_CRLF
ClobLen := DBMS_LOB.GETLENGTH(V_HTML);
LOOP
EXIT WHEN offset > ClobLen;
DBMS_LOB.READ(V_HTML, amount, offset, BUFFER);
UTL_SMTP.write_raw_data(V_MAIL_CONN, UTL_RAW.cast_to_raw(BUFFER));
offset := offset + amount;
END LOOP;
UTL_SMTP.write_data(V_MAIL_CONN, UTL_TCP.CRLF);
728x90
반응형
'Oracle' 카테고리의 다른 글
[Oracle] 테이블 중복값 중에 최신값 가져오는 방법 (0) | 2024.02.23 |
---|---|
한글 - 알파벳 - 숫자 순으로 정렬 (0) | 2023.08.01 |
오라클 문자열 자르기 컬럼 구분값 자르기 (0) | 2023.04.24 |
RDS 세션 Kill 하기 (0) | 2023.03.20 |
오라클 Instance Name 조회 하기 (0) | 2023.03.17 |
댓글