ResultSet 예외: "결과 세트 시작 전"
ResultSet 객체에서 데이터를 검색할 때 다음 메시지와 함께 예외가 발생할 수 있습니다. "결과 세트 시작 전." 이 오류는 커서가 첫 번째 행으로 이동하기 전에 결과 데이터에 액세스하려고 할 때 발생합니다.
이 문제를 해결하려면 시도하기 전에 next() 메서드를 사용하여 명시적으로 커서를 첫 번째 행으로 이동했는지 확인하세요. 데이터를 검색합니다. 아래 수정된 코드는 이 수정 사항을 보여줍니다.
ResultSet result = prep.executeQuery(); if (result.next()) { // Move cursor to first row String foundType = result.getString(1); if (!foundType.equals("meet")) { throw new IllegalArgumentException(String.format("Node %d must be of type 'meet', but was %s", meetNID, foundType)); } }
또는 while 루프를 사용하여 결과 집합을 반복하고 처리할 행이 더 이상 없을 때까지 각 행에서 커서를 이동할 수 있습니다.
ResultSet result = prep.executeQuery(); while (result.next()) { String foundType = result.getString(1); if (!foundType.equals("meet")) { throw new IllegalArgumentException(String.format("Node %d must be of type 'meet', but was %s", meetNID, foundType)); } }
커서를 첫 번째 행으로 이동하면(또는 루프를 사용하여 결과 집합을 반복하여) 성공적으로 데이터를 검색하고 예외를 처리할 수 있습니다. 우아하게.
위 내용은 ResultSet 데이터에 액세스할 때 '결과 세트 시작 전' 예외가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!