DB (데이터베이스)/Tibero (티베로)

[TIBERO] JDBC-5072:Failure converting NUMBER to or from a native type.라는 티베로 오류가 발생할 때

뜽배 2021. 4. 5. 10:49
728x90
반응형

alter table <테이블 명> drop column <칼럼이름>;

또는

drop table <테이블 명>;

 

위의 SQL처럼 DDL을 진행할 때 발생하는 티베로 버그이다.

 

-----------해결방법-----------

 

1. SYS계정으로 로그인

 

2. SELECT OBJECT_ID, OBJECT_NAME FROM DBA_OBJECTS WHERE OBJECT_NAME=<테이블명>;

위의 SQL로 변경하고자 하는 테이블의 OBJECT_ID를 기억한다.

 

3. SELECT ROW_CNT, OBJ_ID FROM SYS._DD_TBL WHERE OBJ_ID = <오브젝트ID>;

위의 SQL로 조회를 했을 때 ROW_CNT는 NULL로 나올 것이다.

 

4. UPDATE SYS._DD_TBL SET ROW_CNT = 0 WHERE OBJ_ID = <오브젝트ID>;

위의 SQL로 수정을 하면 해결완료.

 

 

출처 : 

seongjins.tistory.com/245

 

5072: Failure converting NUMBER to or from a native type.

티베로에서 DDL을 수행할 때 "JDBC-5072 Failure converting NUMBER to or from a native type” error in tibero" 와 같은 오류 메시지를 볼 수 있다. 처음 보면 당황한다. 테이블에 데이터가 존재하기 때문에 나..

seongjins.tistory.com

 

-----------또는----------

 

※ drop user 안될 때

1. root 권한으로 터미널 접속 하여 null인 테이블의 행수 찾는다.

select 

a.object_id 

from 

dba_objects a, 

(select obj_id, row_cnt from sys._dd_tbl ) b

where 

a.object_id= b.obj_id 

and b.row_cnt is null;

 

2. row_cnt = 0 으로 업데이트 한다.

update 

sys._dd_tbl set row_cnt = 0 

where 

obj_id in ( 

select 

a.object_id 

from 

dba_objects a, 

(select obj_id, row_cnt from sys._dd_tbl ) b 

where 

a.object_id= b.obj_id 

and b.row_cnt is null

);

 

3. 커밋

commit;

 

4. drop user한다.

 

 

728x90
반응형