Back Ground

티베로에서 잘못된 에러코드 [11020:String concatenation result is too long] 본문

카테고리 없음

티베로에서 잘못된 에러코드 [11020:String concatenation result is too long]

Back 2017. 11. 29. 14:54
티베로 잘못된 에러코드 설명

현재 티베로 버젼은 6







function [TEST$F_MAKE_TEST$I()]

1
2
3
4
5
6
7
8
9
10
11
12
CREATE OR REPLACE -- added during DDL generation.
FUNCTION  TEST$F_MAKE_TEST$I( C_CODE CHAR :='')
RETURN CHAR
IS
c_no VARCHAR2(2000) := '';
BEGIN
IF LENGTH(C_CODE)>0 THEN
c_no := callno||'='||C_CODE;
END IF;
 
RETURN LTRIM(c_no);
END TEST$F_MAKE_TEST$I;
cs


이러한것 처럼 C_CODE 변수에 CHAR 데이터형으로 :='' 값을 넣었다.






sql

1
2
3
 SELECT 
      TEST$F_MAKE_TEST$I() AS TEST_DATA       
  FROM TEST_TBL;
cs

이러한 쓸데없는 SQL문 있을때 실행시켰을 시




그런시 LENGTH(C_CODE)가 들어간 순간 

에러가 발생한다.




[select error]

java.sql.SQLException:JDBC-11020:String concatenation result is too long.

TBR-15163:Unhandled exception at TEST$F_MAKE_TEST$I, line 2




콘솔로 알아본 11020에러는 

C:\Lucene_Data>tberr 11020

/*

 * err:   -11020

 * name:  ERROR_EXP_CONCAT_TOO_LONG

 * desc:   String concatenation result is too long.

 * cause:  The result of a string concatenation is too long.

 * action: Make sure that the total length of the concatenation result 4,000).;

 */ 


구글 번역 : 문자열 연결 결과가 너무 깁니다.

4000까지만 지원된다...



???????

이게 무슨 소리지 황당한 에러 메세지.. 전혀 관련 없잖아...??






[함수 error]

 RET_ECO$F_MAKE_CALLNO2$I=null





즉, CHAR 에 := '' 로 LENGTH() 를 사용 시 에러 발생..


그래서 처리 가능한 방법


 원본 

 대처 법

 

1
2
3
4
5
6
7
8
9
10
11
12
CREATE OR REPLACE -- added during DDL generation.
FUNCTION  TEST$F_MAKE_TEST$I( C_CODE CHAR :='')
RETURN CHAR
IS
c_no VARCHAR2(2000) := '';
BEGIN
IF LENGTH(C_CODE)>0 THEN
c_no := callno||'='||C_CODE;
END IF;
 
RETURN LTRIM(c_no);
END TEST$F_MAKE_TEST$I;
cs


 

1
2
3
4
5
6
7
8
9
10
11
12
CREATE OR REPLACE -- added during DDL generation.
FUNCTION  TEST$F_MAKE_TEST$I( C_CODE VARCHAR :='')
RETURN CHAR
IS
c_no VARCHAR2(2000) := '';
BEGIN
IF LENGTH(C_CODE)>0 THEN
c_no := callno||'='||C_CODE;
END IF;
 
RETURN LTRIM(c_no);
END TEST$F_MAKE_TEST$I;
cs


변수 데이터형을 CHAR  -> VARCHAR 로 변경



[결과]




  



Comments