LoCal Geschrieben 6. August 2002 Geschrieben 6. August 2002 Hei, bin ich blind oder gibt es keine Methode mit der ich feststellen kann, wie viele "Ergebnisse" ein SQL-Abfrage zurückgeliefert hat. Es is hier so, daß ich aus einer Datenbankkunden abfrage und das Ergebniss in einen Array-schreiben will. Leider habe ich keine Methode in "ResultSet" gefunden, die getRowCount() oder ähnlich heißt. Die einzige möglichkeit die mir eingefallen ist, wäre ans ende zu springen, dort die Reihennummer zu holen, dann wieder an den Anfang, den Array-erstellen und dann einlesen. Ist aber nicth besonders schön Warum ich keinen Vector verwende? Der hatte hier eine "Merkwürdigkeit", darum will ich lieber einen Array von meinem Objekt "kunde" verwenden. Thx Peace,
Jaraz Geschrieben 6. August 2002 Geschrieben 6. August 2002 Hallo, es gibt keine Möglichkeit die Anzahl in nem Resultset zu erfahren da je nach JDBC Treiber teilweise schon mit dem Resultset gearbeitet werden kann, bevor sämtliche Daten empfangen wurden. Deswegen ist ResultSet auch nicht serialisierbar. Wirst also doch nen Vector oder ne ArrayList nehmen müssen. Gruß Jaraz
Klotzkopp Geschrieben 6. August 2002 Geschrieben 6. August 2002 Oder vorher ein Statement mit COUNT absetzen. Ist manchmal die performantere Lösung, wenn auch bei sich schnell verändernden Datenbanken etwas unsicher...
LoCal Geschrieben 6. August 2002 Autor Geschrieben 6. August 2002 Mittlerweile hab ich das mit dem Vector geklärt, aber irgendwie zeigen Vector und JComboBox in Verbindung ein Merkwürdiges verhalten. Peace,
BMAS Geschrieben 6. August 2002 Geschrieben 6. August 2002 Man kann aber die Metadaten des ResultSets auslesen, einfach mal: ResultSetMetaData rsetmd = rset.getMetaData(); int cols = rsetmd.getColumnCount(); rset.last(); int rows=rset.getRow(); damit probieren, wobei rset dann dein ResultSet sein sollte. Du bekommst dadurch die Menge der Spalten und der Zeilen zurückgeliefert, vielleicht hilft dir das ja weiter, denn anhand der Zeilenanzahl kannst du bestimmen wieviele Ergebnisse du bekommen hast...
LoCal Geschrieben 6. August 2002 Autor Geschrieben 6. August 2002 Original geschrieben von BMAS Man kann aber die Metadaten des ResultSets auslesen, einfach mal: int rows=rset.getRow(); damit probieren, wobei rset dann dein ResultSet sein sollte. Das hatte ich ja oben schon gemeint, aber ich finde es halt nicht die tollste Art und Weise wie mensch es machen kann. Peace,
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden