JDBC fuer Interbase ResultSet Probleme

latogt

Grünschnabel
Interbase Version 6.0.1.6


Moin,

arbeite mit einem JDBC Treiber der Version 1. Weil es keine neueren Treiber zu dieser DB Version gibt.
Habe eine DB Abfrage erstellt und durchlaufe mein ResultSet. Das ResultSet muss ich an mehreren Stellen durchlaufen. Leider durchlaeuft er das nur einmal und danach kommt eine Fehlermeldung:


interbase.interclient.InvalidOperationException: [interclient] Invalid operation to read past end of cursor.
See API reference for exception interbase.interclient.InvalidOperationException


Ich habe festgestellt, dass wenn ich das ResultSet nur einmal durchlaufe, die Fehlermeldung nicht kommt. Es scheint also so, als koenne ich das nur einmal durchlaufen. Ich brauche es aber mehrmals. Wie kann ich das loesen?
 
Ist es nicht sinnvoller mehrfach benötigte Daten beim ersten Durchlauf zu merken?

Wie auch immer... schau dir mal Connection.createStatement an. Dort kann man zusätzliche Parameter mit übergeben unter anderem auch was die ResultSets unterstützen können sollen.
 
Ich weiss, dass man dort bestimmte Parameter fuer das hin und herspringen des Zeigers eines ResultSets setzen kann. Nur leider unterstuetzt das der JDBC Treiber nicht.
 
Dann mach dass doch über das Spring JDBC Template (in den Tutorials hier zu finden) oder über die Apache Commons DBUtils. Dort wird das ResultSet in eine Datenstruktur extrahiert, dann kannst du darüber iterieren.
 
Zurück