Lesen einer Access-Datenbank von Java (Eclipse)

2688
Lena

Ich verwende Windows 7 (64-Bit). Ich habe 64-Bit-Versionen von Eclipse und JRE installiert, aber als ich versuchte, von Access zu lesen, bekam ich Probleme.

Die einzige Möglichkeit, ODBC zu verwenden, scheint die Verwendung einer 32-Bit-Variante zu sein, die jedoch nicht übereinstimmt. Es sieht so aus, als müsste Java im 32-Bit-Modus laufen, um es verwenden zu können.

Kann ich einfach Java ändern (in den Laufzeiteigenschaften des Projekts auswählen?) Oder sollte ich Eclipse auch auf einer 32-Bit-Version neu installieren?

Ich glaube, ich habe nur eine JRE installiert (?)

Ich habe es mit dem "UCanAccess" -JDBC-Treiber versucht, aber ich denke, ich brauche wahrscheinlich auch eine 32-Bit-Laufzeitumgebung.

Ich führe mein Programm in Eclipse aus, um Daten zu lesen und verschiedene XML-Dateien zu erstellen. Gibt es alternative Treiber? für Access oder Excel (oder eine andere freie Datenbank)?

1

2 Antworten auf die Frage

1
TallTed

Einfach ausgedrückt: 64-Bit-Windows unterstützt sowohl 32-Bit- als auch 64-Bit-Komponenten - Sie können also einen 32-Bit-Stack oder einen 64-Bit-Stack für Ihre Anwendung auswählen - alles, was in den Arbeitsspeicher geladen wird (Eclipse-, JRE-, JDBC-Treiber für ODBC-Datenquellen, ODBC-Treiber) muss die gleiche Bitzahl aufweisen.

Ich wette, dass Ihr ODBC-Treiber für Access und / oder Access selbst 32-Bit ist, obwohl Ihre Windows-Umgebung 64-Bit ist.

Auf dieser Grundlage denke ich, dass Sie der Umgebung den 32-Bit-Eclipse und / oder Java hinzufügen müssen (unabhängig davon, ob Sie die 64-Bit-Komponenten behalten) oder einen 64-Bit-ODBC-Treiber für Access und / oder installieren 64-Bit-Zugriff.

Dieser Artikel auf der Website meines Arbeitgebers zur Verwendung von 32-Bit-ODBC unter 64-Bit-Windows kann Ihnen dabei helfen, ...

Beachten Sie außerdem, dass die in die JVM integrierte JDBC-zu-ODBC-Bridge NICHT für die Verwendung in der Produktion empfohlen wird und weder in Java 8 noch in späteren Versionen der JVM enthalten ist. Möglicherweise möchten Sie die ODBC-zu-JDBC-Bridge von meinem Arbeitgeber als Ersatz betrachten.

0
Gord Thompson

Ich habe es mit dem "UCanAccess" -JDBC-Treiber versucht, aber ich denke, ich brauche wahrscheinlich auch eine 32-Bit-Laufzeitumgebung.

Nein. UCanAccess ist eine reine Java - Implementierung, die Access ODBC nicht verwendet, sodass sie unter der von Ihnen verwendeten JVM ausgeführt werden kann: 64 - Bit oder 32 - Bit, Windows / Linux / Mac, Java 7 oder Java 8. (Frühere Versionen von Java wird möglicherweise ebenfalls unterstützt. Weitere Informationen finden Sie auf der UCanAccess-Site.)

Weitere Informationen zum Einrichten finden Sie im folgenden Artikel zum Stapelüberlauf:

Bearbeiten einer Access-Datenbank von Java aus ohne ODBC