ORACLE CLOB 컬럼인데 4000Byte 이상 INSERT 시 오류가 발생 했다..
CLOB 컬럼에 4000byte 이상 값을 INSERT / UPDATE 할 경우
ORA-01461: LONG 값은 LONG 열에만 입력할 수 있습니다 오라클 에러가 발생했다
4000bytes 이상 데이터를 저장하기 위해 VARCHAR2안쓰고
CLOB를 사용했는데 에러가 발생했다 :( ...
원인은 오라클 String타입 함수
INSERT INTO TABLE_NAME
(
COLUMN_MN
)
VALUES
(
NVL (#COLUMN_NAME#, ' ')
)
오류 원인은 INSERT 쿼리에서 VALUES값 셋팅 시
NVL을 사용함으로 인해서 String 타입으로 자동 변환되서
4000bytes 이상 값이 들어왔을 때 에러가 발생한 것이다.
오라클 함수를 안쓰니까 해결!
INSERT INTO TABLE_NAME
(
COLUMN_MN
)
VALUES
(
#COLUMN_NAME#
)
NVL 빼버리고 바로 값 셋팅하니 정상 동작 됐다 -!
'IT > 개발이슈' 카테고리의 다른 글
Jackson ObjectMapper 로 가져온 JSON MAP으로 꺼내기 (0) | 2020.10.01 |
---|---|
CLOB 컬럼 VARCHAR2로 분할해서 여러행으로 나눠 조회 가져오기 (CONNECT BY) (0) | 2020.10.01 |