JDBC-ResultSet-Problem: Ausnahme „Vor dem Start des Ergebnissatzes“
Beim Versuch, Daten aus einem ResultSet-Objekt abzurufen, kann ein Fehler auftreten mit der Angabe „Vor Beginn der Ergebnismenge.“ Dieser Fehler tritt typischerweise aufgrund eines Positionierungsproblems mit dem Cursor innerhalb des ResultSet auf.
Im bereitgestellten Code-Snippet wird das ResultSet mit result.beforeFirst() vor der ersten Zeile positioniert. Anschließend wird versucht, Daten mit result.getString(1) abzurufen, ohne zuerst den Cursor auf eine gültige Zeile zu bewegen.
Um dieses Problem zu beheben, sollte der Cursor vor dem Abrufversuch in der ersten Zeile positioniert werden Daten. Dies kann entweder durch die Verwendung der Methoden result.next() oder result.first() erreicht werden.
Korrigierter Code:
ResultSet result = prep.executeQuery(); result.next(); // Move the cursor to the first row String foundType = result.getString(1);
Alternativ, wenn nicht sicher ist, ob Das ResultSet enthält alle Daten. Eine if-Anweisung kann verwendet werden, um nach Daten zu suchen, bevor versucht wird, den Cursor zu bewegen:
if (result.next()) { String foundType = result.getString(1); }
By Durch Sicherstellen, dass der Cursor vor dem Abrufen von Daten in einer gültigen Zeile positioniert ist, kann die Ausnahme „Vor dem Start des Ergebnissatzes“ vermieden werden und Daten können erfolgreich aus dem Ergebnissatz abgerufen werden.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich in JDBC die Ausnahme „Vor dem Start der Ergebnismenge'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!