Oracle) Error) ORA-01461: can bind a LONG value only for insert into a LONG column - Varchar2 최대 크기

이지우·2022년 12월 8일
0
  • varchar2 최대 크기를 초과한 문자열 데이터를 저장하려할 때 발생
    * Oracle Varchar2의 최대 크기는 4000 BYTES, UTF-8 한글 3Bytes, 1Bytes
// actorDetetail 최대 크기 제한

int actorDetailLengh = actorDetail.length();

log.info(movieVO.getMovieCd()+"/"+movieVO.getMovieNm()+"/"+actorDetailLengh);

if(actorDetailLengh < 1330) {
	movieVO.setActorDetail(actorDetail);
} else {
	log.info("!!!!!!actorDetail!!!!!!"+movieVO.getMovieCd()+"/"+movieVO.getMovieNm()+"/"+actorDetailLengh+"/"+actorDetail);
  	actorDetail = actorDetail.substring(0, 1330);
    int lastCommaIdx = actorDetail.lastIndexOf(",");
    if(lastCommaIdx != -1) {
        actorDetail = actorDetail.substring(0, lastCommaIdx);
        movieVO.setActorDetail(actorDetail);
    }
}
// -> length, substring 등의 함수는 bytes 기준. 문자열 모두 한글로 구성되어있다는 가혹조건으로 1330 임의로 지정함
			
profile
IT개발 입문합니다.

0개의 댓글