본문 바로가기
💁❓/오류

🐞java.sql.SQLException: 부적합한 열 유형: 1111

by W_W_Woody 2022. 3. 12.

상황

게시판 글 수정 적용시 에러 발생

 

 

 

콘솔에 로그는 잘찍히고 데이터들도 잘 넘어오는 걸 확인할 수 있었다.

 

한줄한줄 로그를 추가해보기로 한다.

 아 그러다가 오타 발견

setId가 아니라 setIp...........

 

이 상황에서는 

결과적으로 오타 문제였음!

 


해결하기 위해 구글링하다가 알게된 정보는 아래와같다.

 

1. 넘어가는 데이터 타입이 다를 경우

2. Map을 파라미터로 넘겼을 시에 해당 맵안에 파라미터가 Null일 경우

3. request 파라미터 값이 없을 겨우

4. form id & name 값 미지정시

5. ajax를 사용했을 겨우에 value가 하나라도 null일 경우.

 

대부분 인터넷에서는 오타데이터 타입이 다를 경우에 생긴다고 하는데

나 같은 경우에는 2. Map을 파라미터로 넘겼을 시에 해당 맵안에 파라미터가 Null일 경우이다.

 

이때 그럼 어떻게 처리 할까? myBatis에서 #{empName, jdbcType=VARCHAR} 이런 식으로 처리해야 할까?

그럼 하나씩 모두 다 그렇게 처리해야 하는데..ㅜ.ㅜ

 

mybatis-config.xml를 열어서 <setting name="jdbcTypeForNull" value="NULL"/>를 추가 해주자!!

[소스코드]

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE configuration 

PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-config.dtd">

 

<configuration>

    <settings>

        <setting name="jdbcTypeForNull" value="NULL"/>

    </settings>

</configuration>



출처: https://koeiking11.tistory.com/entry/부적합한-열-유형-1111 [코더에서 개발자로 가는길.]

 

 

댓글