반응형
Spring Boot, Mybatis, PostgreSQL 을 사용하여 프로젝트를 구현하고 있다.
원인
그런데 이번에 insert 를 구현하는데 Parameter 'user_id' not found. Available parameters are [ ... ] 에러가 발생하는 거다.
보면 user_id 로 값을 잘 넘기고 있는 걸 확인할 수 있다.
곰곰히 생각해보다가, vo 와 다른 변수를 파라메터로 함께 넘기는게 처음이라는 걸 깨달았다.
vo 객체와 다른 변수를 함께 넘겨 이 둘을 구분하지 못하고 있는 건 아닐까?
해결방법
혹시나 해서 MyBatis XML 파일에 vo 객체 내에서 불러오는 것들은 vo 를 붙여주니 해결되었다.
<insert id="insertPenaltyLog">
INSERT INTO penaltylog
(
user_id
, group_id
, logcontent
, penalty_round
)
VALUES (
#{vo.user_id}
, #{vo.group_id}
, CONCAT ('기준 미달 : ', #{log_count}, '/', (select chk_min_cnt as 기준
from studygroup
where group_id = #{vo.group_id}))
, COALESCE ((select assigncycle from sg_assigncycle
where group_id = #{vo.group_id}
and now() between date (startdate) and date (enddate)), 'ERROR')
)
</insert>
다음으로 넘어간 것을 확인할 수 있다.
반응형