iBatis로 데이터베이스 테이블의 int형 컬럼값을 가져올때
컬럼의 값이 NULL이거나 값이 없을 경우 예외가 발생하게 된다.
char형 컬럼은 상관이 없다.

이런 현상은 int가 객체가 아니기 때문에 매핑시 에러가 발생하게 된다고 한다.
이 오류를 해결하기 위해서 물론 쿼리에서 null일경우 0으로 치환할 수는 있다.
하지만, 개인적인 생각으로는 null과 0은 분명히 다른 값이므로 임의로 null을 쿼리에서 0으로 변환하는 것은 그닥 추천할 만한 방법은 아닌듯 싶다.

그래서, 테이블 생성할때 컬럼속성이 int형인 경우는 테이블 생성시 제약조건에서 디폴트 값을 0 또는 다른 값으로 미리 지정하는 방법이 나을 것 같다.




'Java > iBatis' 카테고리의 다른 글

[iBatis] NUMBER(INT) 타입 컬럼 처리 시 cast 오류 발생  (1) 2011.03.29
[iBatis] Dynamic SQL, iterate  (1) 2010.02.03
Posted by finewoo
,