본문 바로가기
DB/Altibase

트리거 사용 중 일부 데이터 조작시 135217 에러가 발생하는 경우

by APH 2023. 12. 27.

아래 예제와 같은 테이블 구조로 LOB 컬럼이 존재하며

트리거를 사용하여 Insert, Update, Delete 감지시

"TABLE_A"에서 "TABLE_B"로 데이터를 입력하는 업무를 수행함

 

테이블 구조 예제

TABLE_A
COL1    VARCHAR(30)
COL2    CLOB


TABLE_B
COL0    NUMERIC
COL1    VARCHAR(30)
COL2    CLOB
COL3    CHAR(1)
COL4    CHAR(1)

 

이슈

특정 데이터 입력 또는 일괄 Update하는 과정에서 135217에러(컬럼타입 불일치)가 출력됨.

다양한 케이스로 확인한 결과 조작하는 ROW의 LOB컬럼 Byte합계가 30KB에 도달하면 해당 에러가 발생하였음.

 

해결

알티베이스측에 해당 내용을 전달한 결과

알티베이스 환경설정에 LOB_OBJECT_SIZE를 30KB으로 설정하여 발생한 이슈라고 전달받음

관련 담당자를 통하여 해당 사이즈를 늘린 다음 알티베이스를 재기동한 결과 해결되었음


제공된 Orange for Altibase로 점검하는 과정에서 Trigger가 제대로 출력되지 않는 현상이 발견됨.

Altibase에서 Insert, Update, Delete 트리거를 각각 만들어야하는데

Orange에서 Trigger 출력시 동일한 테이블에 걸려있는 트리거들의 내용들이 합쳐져서 출력되었음.