Anzahl er Ergebnisse bei ResultSet
-
Hallo Jungs,
ich mache mittels MySQL Abfrage und lasse mir in einem ResultSet die Daten wiedergeben.
Nun möchte ich gerne Wissen wieviele Datensätze mein ResulSet hat. Bin ich mit der Funktion getFetchSize richtig, oder brauche ich eine andere?
Eure Yvette
-
probiers aus
-
Hallo,
ich bin mir jetzt nicht 100% sicher, aber ich glaube, getFetchSize() liefert nur die Zeilenanzahl, die auf einmal von deiner Datenbank zum Programm übertragen werden. Falls das nicht korrekt ist, bitte Rest ignorieren
IMHO hast du zwei Möglichkeiten, die Anzahl der Datensätze herauszufinden:
1. Mit einer zweiten Datenbankabfrage mit SELECT COUNT (*) FROM ... WHERE ...
2. Mit Cursorn im ResultSet:
rs.last(); // Cursor auf letzten Datensatz setzen
int rows = rs.getRow(); // Zeilennummer feststellen
rs.beforeFirst(); // Cursor wieder zurücksetzenBei der 2. Methode muss der verwendete Treiber allerdings scrollbare Cursor unterstützen und JDBC2-fähig sein, ansonsten funktioniert das nicht.
Wichtig: Beim Statement muss ein scrollbarer Cursor angemeldet werden:
stmt = con.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE );
Wenn der Treiber dies nicht unterstützt bleibt nur die erste Methode.MfG