[MyBatis] 데이터 여러개 삭제시 Syntax error in SQL statement

Yeoonnii·2022년 9월 23일
0

MyBatis

목록 보기
2/10

게시글 DB에서 데이터 여러개 일괄 삭제시 삭제할 조건(글번호)을 받는 과정에서 Mapper.xml 에 작성한 SQL문 문법 오류 발생

Mapper.xml

    <!-- 선택된 게시글 삭제하기 -->
    <delete id="contentDelete" parameterType="map">
        DELETE BOARDTBL WHERE NO IN (
        <foreach collection="list" item="tmp" separator=",">
        #{tmp}
        </foreach>
        )
    </delete>

WHERE NO IN(3,4,5)WHERE NO=3 OR NO=4 OR NO=5 와 같은 뜻이며,
여러개의 번호를 일괄로 Mapper.xml에 보낼경우 ( ) 괄호가 포함이 되어야 한다

( ) 괄호를 사용해주지 않아 생긴 문법 오류였다

    <!-- 선택된 게시글 삭제하기 -->
    <delete id="contentDelete" parameterType="map">
        DELETE BOARDTBL WHERE NO IN (
        <foreach collection="list" item="tmp" separator=",">
        #{tmp}
        </foreach>
        )
    </delete>

수정해주니 정상적으로 삭제가 진행된다

0개의 댓글

관련 채용 정보