[SPRING] java.sql.SQLException : 부적합한 열 인덱스

[SPRING] java.sql.SQLException : 부적합한 열 인덱스

- java.sql.SQLException : 부적합한 열 인덱스 -

진짜 별거 아닌 이유로

자주 발생하고 자주 보게 되는 에러인거같다.

해당 에러는 어느 부분에서 에러가 나는지 알려주는데

... preparedstatement.setstring(2,'mgt_no') ...

이런식으로 아주 친절하게(?) 에러가 발생하였다

평소처럼 그냥 값 순서를 다르게 넣어서 타입이라도 틀렸나보다 싶어서

확인한결과 전혀 무관한 곳에서 에러가 발생했었다.

에러가 발생한 상황은 다음과 같다.

1. 스프링에서 mybatis를 사용하는 중 이였고

2. M_CODE IN ('#{mineString1}' , '#{mineString2}')

이런식으로 사용했는데 에러가 발생했다

알고 보니

문자열은 양 끝에 자동으로 작은 따음표 즉 싱글 쿼터(' ') 가 붙는단다.

그래서 #{minString1} , #{mineString2} 이렇게만 사용하니

정상적으로 잘 돌아간다.

파라미터가 문자열이라면 굳이 쿼터로 미리 감싸줄 필요가 없다.

바로 쓰면 다음과 같다.

M_CODE IN( #{mineString1} , #{mineString2} )

from http://mine-it-record.tistory.com/292 by ccl(A) rewrite - 2020-03-18 20:54:29

댓글

이 블로그의 인기 게시물

데이터 바인딩 추상화 - propertyEditor

[샤니마스 SPRING PARTY2020] THE IDOLM @ STER SHINY COLORS SPRING...

Spring Web Form