• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

69강 질문드립니다.

22.12.19 23:52 작성 22.12.20 00:12 수정 조회수 147

0

안녕하세요 선생님.

 

69강 진행 중에 cos라는 id로 먼저 회원가입을 한 상태에서 com이라는 아이디로 회원가입을 다시 시도하였는데 다음과 같이 오류가 났습니다. 저 스스로 오류를 고쳐보고자 선생님 github의 코드와 비교해 보면서 해봤는데도 해결이 안되고 있습니다.. 어떻게 해결하면 좋을까요? 댓글에서 해결했습니다! github 수정이 필요해 보여요

 

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: 
### Error updating database.  Cause: java.sql.SQLSyntaxErrorException: (conn=200) Truncated incorrect DOUBLE value: 'cos'
### The error may involve kr.board.mapper.MemberMapper.register-Inline
### The error occurred while setting parameters
### SQL: insert into  mem_stbl(memIdx,memID,memPassword,memName,memAge,memGender,memEmail,memProfile)  values((select IFNULL(MAX(memId)+1,1) from mem_stbl mem),?,?,?,?,?,?,?)
### Cause: java.sql.SQLSyntaxErrorException: (conn=200) Truncated incorrect DOUBLE value: 'cos'
; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: (conn=200) Truncated incorrect DOUBLE value: 'cos'

답변 1

답변을 작성해보세요.

0

아 이거 다시 확인해 보니까

 

<insert id="register" parameterType="kr.board.entity.Member"> insert into mem_stbl(memIdx,memID,memPassword,memName,memAge,memGender,memEmail,memProfile) values((select IFNULL(MAX(memId)+1,1) from mem_stbl mem) , #{memID},#{memPassword},#{memName},#{memAge},#{memGender},#{memEmail},#{memProfile}) </insert>

 

github에서 IFNULL(MAX(memId)+1,1) 이부분이 memIdx가 memId로 되어 있네요;;

 

memIdx로 변경해서 해결했습니다. pdf에는 Idx로 되어 있는데 제가 치면서 오타를 쳤나봐요. github만 계속 봤는데 github에 잘못 되어 있었습니다.

네 감사합니다.

아마 67강 12분17초 부분에서

(select IFNULL(MAX(memId)+1,1) 코드른 아래처럼 수정하시면 될듯합니다.

(select IFNULL(MAX(memIdx)+1,1)

memId -> memIdx

깃허브도 수정해서 올려두었습니다^^