반응형
🐛 오류 현상
Request processing failed; nested exception is org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #1 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 부적합한 열 유형: 1111
위의 오류 문구가 발생하는 케이스는 다양하다.
- 데이터 타입이 다른 경우
- Map을 파라미터로 넘겼을 때 해당 맵안에 파라미터가 null인 경우
- ...
INSERT 수행 시, 특정 컬럼은 값이 있을 수도 있고 없을 수도 있는 상황이었으며, null을 허용해야 하는 상황이었다.
🐛 오류 조치
만약 USER 테이블의 전화번호 컬럼(USER_TEL)이 경우에 따라 NULL로 INSERT 되어야 한다고 가정해보자.
USER_TEL에 NULL을 허용하는 방법은 다음과 같다.
CASE 1. 타입명시
INSERT INTO USER (
USER_ID,
USER_NAME,
USER_TEL
) VALUES (
#{userID},
#{userName},
#{userTel, jdbcType=VARCHAR}
)
CASE 2. 설정파일 수정 - xml
<settings>
<setting name="cacheEnabled" value="false" />
<setting name="jdbcTypeForNull" value="NULL" />
</settings>
CASE 3. 설정파일 수정 - Java Config
org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration();
configuration.setCacheEnabled(false);
configuration.setJdbcTypeForNull(null);
반응형
'Error' 카테고리의 다른 글
[Git] Author identity unknown (0) | 2023.03.30 |
---|---|
[JPA] Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Column "start_value" not found (0) | 2023.03.11 |