ERROR 해결

[MyBatis] 에러해결 Mapped Statements collection already contains value for $

엘라 ELLA 2022. 12. 15. 14:06
728x90
반응형

에러)

Mapped Statements collection already contains value for ~~ .xml.. ~

 

원인)

xml 파일에 쿼리문을 짤 때, id값이 중복된 값이 존재 함.

 서로 다른 테이블을 Delete 하려는 쿼리문이지만, 비슷한 구문이라 복사 / 붙혀넣기 하는 과정에서 id를 변경해주지 않아 한개의 xml 파일에 동일한 id의 쿼리문이 2개가 되어버림.

 

<delete id="delete2" parameterType="dto1">
    DELETE FROM table
    WHERE idx = #{idx}
</delete>

<delete id="delete2" parameterType="dto2">
    DELETE FROM table2
    WHERE idx = #{idx}
</delete>

 

해결)

첫번 째 delete를 구현하기 위한 id를 "delete1"로 해서 겹치지 않게 해줌.

 

<delete id="delete1" parameterType="dto1">
    DELETE FROM table
    WHERE idx = #{idx}
</delete>

<delete id="delete2" parameterType="dto2">
    DELETE FROM table2
    WHERE idx = #{idx}
</delete>

 


 

 

게시글이 도움이 되었다면

[로그인]이 필요 없는 ❤ 눌러주세요:)

반응형