https://crescentm.tistory.com/406
위 내용 필수 확인
ResultSet rs = stmt.executeQuery("select * from student");로
student테이블의 값을 검색했는데 테이블에 데이터가 없을 경우
rs를 사용하면 Illegal operation on empty result set. 에러가 발생합니다
rs.getString("name").equals(name)를 하면 찾는 이름이 없는데 비교를 하기에
오류가 생깁니다
해결 방법은
결과 값이 없을 때 rs.next()의 값은 false가 되므로
예를 들면 if(rs.next())라고 하면 검색한 DB값이 있을 경우만 참으로 동작하고
if(!rs.next())라고 하면 검색한 DB값이 없을 경우만 참으로 동작합니다
rs = stmt.executeQuery("select * from student where name = '" + name + "'");
//DB에 삭제할 값이 존재할 경우
if (rs.next()) {
stmt.executeUpdate("delete from student where name = '" + name + "'");
} else {
System.out.println("삭제할 학생의 정보가 없습니다.");
}
JDBC ResultSet 위치 이동 (4) | 2021.01.28 |
---|---|
java myslq 학생정보 프로그램 (0) | 2021.01.27 |
Thread 클래스의 주요 메서드 (0) | 2021.01.26 |
JAVA swing TextArea 사이즈 조절 (0) | 2021.01.25 |
교과목 성적처리 프로그램(java) (0) | 2021.01.15 |