mybatis 에서 insert/update 시 mssql 에서는 안나는데 오라클에서는 아래와 같은 에러가 난다.
<에러구문>
org.springframework.jdbc.UncategorizedSQLException: Error setting null parameter. Most JDBC drivers require that the JdbcType must be specified for all nullable parameters. Cause: java.sql.SQLException: 부적합한 열 유형
; uncategorized SQLException for SQL []; SQL state [null]; error code [17004]; 부적합한 열 유형; nested exception is java.sql.SQLException: 부적합한 열 유형
<해결책>
sqlMap 파일의 쿼리에서 아래와 같이 NOT NULL 컬럼이 아닌 컬럼에 jdbcType을 지정해 주면 된다.
INSERT INTO test (test_id, test_nullable_column)
VALUES (#{testId}, #{testNullableColumn,jdbcType=VARCHAR})
UPDATE test
SET test_nullable_column = #{testNullableColumn,jdbcType=VARCHAR}
'myBatis/iBatis' 카테고리의 다른 글
mybatis 동적쿼리 조건문에 isEmpty, isNotEmpty 를 써보자 (쿼리에 메서드 적용) (0) | 2012.03.06 |
---|