Inflearn brand logo image

인프런 커뮤니티 질문&답변

seim228님의 프로필 이미지
seim228

작성한 질문수

3. 웹개발 코스 [Enterprise Architecture(EA) X 전자정부프레임워크]

제20강_2 게시판 1:N 파일다운로드(이미지보기)

Egov_WEB3 로그인을 하면 에러가 납니다.

작성

·

218

0

context-datasource쪽도 포트와 비밀번호 모두 맞게 수정하였는데도 오류가 납니다.

org.springframework.jdbc.BadSqlGrammarException: Error attempting to get column #3 from callable statement. Cause: java.sql.SQLSyntaxErrorException: (conn=119) No output result

; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: (conn=119) No output result

라는 오류가 뜨는데 어떻게 해결해야할까요?

답변 3

0

seim228님의 프로필 이미지
seim228
질문자

모두 똑같이 적었습니다...ㅜㅜ

개발자Park님의 프로필 이미지
개발자Park
지식공유자

안녕하세요 개발자park입니다.개인적인 일로 답변이 늦은점 죄송합니다.

[마지막 그림]

DB에서 out_state 오른쪽에 보시면 문맥이 out인지 확인이 필요할 듯합니다.

get column #3 from 로그만 보면 가져옴에 문제가 있는 것으로 보입니다.

스샷은 해결되셨다면 삭제부탁드립니다.

감사합니다.

개발자Park님의 프로필 이미지
개발자Park
지식공유자

ㅁㄴㅇㄹ.png.webp

(사진 확대 필요시:마우스 우클릭 후 -새 탭에서 열기)

out이 아닐경우 위처럼 동일한 예외 내용을 얻었습니다.

감사합니다.

seim228님의 프로필 이미지
seim228
질문자

OUT 이 맞습니다...

개발자Park님의 프로필 이미지
개발자Park
지식공유자

일단 로그상으로는 3번째 파라미터에 문제가 있다고 나옵니다.

그러나 코드와 프로시저에 문제가 없으시다면

실행파일이 갱신이 안되는 것으로 보입니다.

 

1.톰캣의 임시 실행파일을 제거해줍니다.

2.인터넷이 연결된상태에서 라이브러리를 강제로 업데이트 시켜줍니다.

  

OK클릭

image

 

3.다시 빌드해서 실행파일을 생성해줍니다.

감사합니다.

(그래도 해결 안되시면 요청시 원격접속으로 봐드릴 수 있습니다.)

seim228님의 프로필 이미지
seim228
질문자

프로시져와 mapper.xml 쪽에 out_state을 모두 지우면 정상적으로 나오는데 지우고 해도 상관 없나요?

seim228님의 프로필 이미지
seim228
질문자

모든 프로시저의 out을 인식을 못하는데...모두 지워야하나요??

개발자Park님의 프로필 이미지
개발자Park
지식공유자

안녕하세요.개발자park입니다.

다시 확인해봤는데 소스코드도 제쪽에서는 문제없이 동작하네요.

[프로시져와 mapper.xml 쪽에 out_state을 모두 지우면 정상적으로 나오는데 지우고 해도 상관 없나요?]

상관은 없습니다. 이건 실무에서 프로시저가 정상적으로 끝났는지 아닌지를 판단하기 위해사용하는 방법 중 하나입니다.

그렇기에 공부용도라면 생략하셔도 무관하긴 합니다.

[모든 프로시저의 out을 인식을 못하는데...모두 지워야하나요??]

import하신 프로젝트의

pom.xml쪽을 https://www.inflearn.com/courses/lecture?courseId=330831&unitId=155003&tab=curriculum&subtitleLanguage=ko의

9:21, 11:57처럼 기존 강의 따라하시던대로 변경해보십니다.

라이브러리 버전차이로 보입니다.

 

1.톰캣의 임시 실행파일을 제거해줍니다.

2.인터넷이 연결된상태에서 라이브러리를 강제로 업데이트 시켜줍니다.

  

OK클릭

image

 

3.다시 빌드해서 실행파일을 생성해줍니다.

 

0

개발자Park님의 프로필 이미지
개발자Park
지식공유자

안녕하세요.개발자park입니다.

[예외내용 요약]

BadSqlGrammarException

SQL문법 예외입니다.

즉 쿼리실행에 문제가 있어보입니다.

[해결방법]

https://www.inflearn.com/courses/lecture?courseId=330831&unitId=159757&tab=curriculum&subtitleLanguage=ko

8:05쪽에 나오는 파라미터와 똑같은지 확인해주십니다.

(만약 다른 저장 프로시저라면 똑같이 파라미터위주로 강의대로 확인해주시면 됩니다.)

BoardMapper.xml에도 올바르게 작성했는지 확인이 필요해 보이십니다.

강의자료실에 프로젝트가 업로드되어있어서 비교하실 수도 있겠습니다.

그래도 해결이 안되신다면 fallingsstar@naver.com로 프로젝트파일을 보내주시면 확인해보겠습니다.

감사합니다.

 

추가로:https://www.inflearn.com/courses/lecture?courseId=330831&unitId=155007&tab=curriculum&subtitleLanguage=ko

19:28초의 그림을 참고해주세요.

seim228님의 프로필 이미지
seim228
질문자

loginSubmission.do 쪽에서 오류가 납니다. Egov_WEB 에서는 잘 되는데 Egov_WEB3에서는 오류가 납니다. MainMapper.xml 부분도 똑같고, 프로시져도 변경한 것이 없는데 왜 안될까요?

0

안녕하세요, 인프런 AI 인턴입니다.

seim228님께서 겪고 있는 문제는 주로 SQL 쿼리 문법 관련 오류입니다. 특히 BadSqlGrammarException는 SQL 문법이 잘못되었을 때 발생합니다. No output result 메시지는 호출한 프로시저나 쿼리가 결과를 반환하지 않을 때 발생할 수 있습니다.

해결 방안:

  1. SQL 쿼리 및 프로시저 확인: 호출하려는 프로시저 또는 쿼리를 데이터베이스에서 직접 실행해 보세요. 오류 메시지를 통해 해당 쿼리가 정확하고 올바른 결과를 반환하는지 검토합니다.

  2. 프로시저 파라미터 체크: 프로시저 호출 시 사용된 파라미터가 올바르게 설정되어 있는지 확인하세요. 파라미터의 데이터 타입이나 개수가 맞지 않으면 오류가 발생할 수 있습니다.

  3. 데이터베이스 드라이버 확인: 사용하는 JDBC 드라이버가 프로젝트와 호환되는지 확인해 보세요. 드라이버의 문제로 인해 SQL 구문이 올바르게 해석되지 않을 수 있습니다.

  4. Example 문법 오류 Troubleshooting:

    • Stack trace를 확인하여 문제 발생 위치를 파악하고, 해당 위치의 쿼리나 프로시저가 정확한지 다시 한번 검토해 주세요.
    • JDBC 연결 설정에서 URL이나 인증 정보가 올바르게 설정되었는지 확인합니다.

유사한 문제 해결을 위한 유사 답변 링크들:

추가적으로 이와 관련된 쿼리나 코드 일부를 제공하신다면 더 구체적인 도움을 드릴 수 있을 것 같습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

seim228님의 프로필 이미지
seim228

작성한 질문수

질문하기