개발 관련 모음/DB

myBatis 사용시 인덱스에서 누락된 IN또는 OUT이 발생 해결방법

mini 아카이브 사서 2024. 4. 22. 16:19
반응형
 /*myBatis 에 프로시저 실행시 인덱스에서 누락된 IN또는 OUT매개변수::3 같은 오류가 생기면 다음과 같이 해결하시오*/
 
<insert id="insertDataProcTest1" parameterType="java.util.HashMap" statemenType="CALLABLE">
 
    CALL PROC_DATA_INSERT (
        IN_NAME         => #{NAME          , mode=IN  , jdbcType=VARCHAR}
        ,IN_NUM         => #{NUM           , mode=IN  , jdbcType=VARCHAR}
        ,O_ERR_MESSAGE  => #{ERROR_MESSAGE , mode=OUT , jdbcType=VARCHAR}
    )
</insert>    

--프로시저에서 리턴받는 mode=OUT 부분의 경우에는 statemenType="CALLABLE" 이걸 줘야 한다.
--만약 입력을 안하고 작업을 진행시 다음과 같은 오류가 발생한다.
--인덱스에서 누락된 IN또는 OUT매개변수::3 라는 오류가 발생한다.
--해결방법은 statemenType="CALLABLE" 넣어주면 끝 대신 parameterType="java.util.HashMap" 은 정상적으로
--넘겨한다 라는 정의는 있다.
반응형