에러
SELECT A.NAME /* 이름 : 홍길동 */ FROM TEST A WHERE 1=1 AND A.ID = #PARAM_1# AND A.NAME = #PARAM_2#
ibatis에서 스프링 서비스 단에서 PARAM_1, PARAM_2 의 바인딩 되는 변수를 넘겨 주었는데 쿼리 실행 결과 PARAM_1 세팅되는 값이 하나씩 밀리는 현상이 되어 PARAM_2의 값이 ?로 세팅이 되는 현상이 발생하였다. 쿼리 툴에서는 : 가 변수를 받을수 있는 구문이며 ibatis에서도 :가 변수를 받을수 있는것으로 되어 있어 넘겨받는 값이 제대로 세팅되지 않은것
원인
쿼리에 /* 이름 : 홍길동*/ 주석이 원인 주석형식은 맞으나 주석 안에 : 이 들어간것이 문제
해결
주석 안에 : 을 제거 하거나 XML에서 사용하는 주석을 사용
728x90
반응형
'Framework > ibatis' 카테고리의 다른 글
ibatis # 과 $ 사용 (0) | 2018.01.21 |
---|---|
iBatis에서 공통으로 사용하는 쿼리문 include하기 (0) | 2017.12.23 |