728x90

문제

Error attempting to get column 'id' from result set

이런 오류가 발생했다. 너무 어처구니 없는 오류였다.

 

해결

BEFORE

<select id="loginCheck" resultType="boolean" parameterType="String">
    SELECT
        id AS id,
        email AS email,
        name AS name,
        nick_name AS nickName,
        phone AS phone,
        forgot_pw_question AS forgotPwQuestion,
        forgot_pw_answer AS forgotPwAnswer
    FROM t_identity
    WHERE email = #{email}
</select>

 

AFTER

<select id="loginCheck" resultType="HashMap" parameterType="String">
    SELECT
        id AS id,
        email AS email,
        name AS name,
        nick_name AS nickName,
        phone AS phone,
        forgot_pw_question AS forgotPwQuestion,
        forgot_pw_answer AS forgotPwAnswer
    FROM t_identity
    WHERE email = #{email}
</select>

 

느낀 점

생각 짧았다.. mybatis를 처음 하다보니까 인터페이스에 선언하는 것과 메소드에 선언하는 것을 잠깐 혼동하고 저 sql 문에 해당하는 값이 db에 있으면 true 없으면 false로 출력한다는 생각에만 사로잡혀서 resultType 을 boolean 으로 해놓았다. 그래서 이런 에러가 생겼던 것이었다. HashMap 으로 바꾸니 정상적으로 됐다.

+ Recent posts