< 에러 메시지 >
SEVERE: 경로 [/11]의 컨텍스트 내의 서블릿 [pf]을(를) 위한 Servlet.service() 호출이, 근본 원인(root cause)과 함께, 예외 [Request processing failed; nested exception is org.springframework.dao.TransientDataAccessResourceException: PreparedStatementCallback; SQL [UPDATE forum.board SET title=?, content=?, hit=0, del_yn='N', reg_dtm='', reg_member_seq=73, update_dtm=DATE_FORMAT(NOW() ,'%Y%m%d%H%i%s') , update_member_seq=0 WHERE board_seq=0 AND board_type_seq=0;]; Parameter index out of range (3 > number of parameters, which is 2).; nested exception is java.sql.SQLException: Parameter index out of range (3 > number of parameters, which is 2).]을(를) 발생시켰습니다.
java.sql.SQLException: Parameter index out of range (3 > number of parameters, which is 2).
TransientDataAccessResourceException
일시적으로 DB 엑세스에 문제가 발생을 나타냄
< 원인 >
public int updateBoard(HashMap<String, String> params) {
String sql ="UPDATE forum.board "
+ "SET title=?, content=?, hit=0, del_yn='N', reg_dtm='', reg_member_seq=73, update_dtm=DATE_FORMAT(NOW() ,'%Y%m%d%H%i%s') , update_member_seq=0 "
+ "WHERE board_seq=0 AND board_type_seq=0;";
Object[] args = { params.get("title"), params.get("trumbowyg-demo"), params.get("boardSeq"), params.get("boardTypeSeq") };
return update(sql, args);
}
SQL 쿼리에서 파라미터 인덱스가 범위를 벗어나 발생
즉, 쿼리의 ?에 바인딩할 값의 개수가 실제 쿼리에 있는 파라미터 개수보다 많다는 것을 의미
Parameter index out of range (3 > number of parameters, which is 2).
< 해결 >
public int updateBoard(HashMap<String, String> params) {
String sql ="UPDATE forum.board "
+ "SET title=?, content=?, hit=0, del_yn='N', reg_dtm='', reg_member_seq=73, update_dtm=DATE_FORMAT(NOW() ,'%Y%m%d%H%i%s') , update_member_seq=0 "
+ "WHERE board_seq=? AND board_type_seq=?;";
Object[] args = { params.get("title"), params.get("trumbowyg-demo"), params.get("boardSeq"), params.get("boardTypeSeq") };
return update(sql, args);
}
?의 바인딩 개수 파라미터 개수랑 맞춤
'에러 모음' 카테고리의 다른 글
XmlBeanDefinitionStoreException (0) | 2024.05.09 |
---|---|
BadSqlGrammarException (0) | 2024.05.09 |
EmptyResultDataAccessException (0) | 2024.05.08 |
TransientDataAccessResourceException (0) | 2024.05.08 |
No Mapping, PageNotFound - 맵핑 에러 (0) | 2024.05.08 |