jdbcodbc brücke - einbinden einer Datenbank in Java

Joy

Mitglied
[Java]public void oeffnen()
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
mTreiber="jdbc:eek:dbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\ ... \Lexikon1.mdb";
objVerbindung=DriverManager.getConnection(mTreiber,"","");
objAusfuehrung=objVerbindung.createStatement();
}
catch (Exception e)
{
System.out.println("Treiber konnte nicht geladen werden");
}
}[/Java]

der Treiber ist auf meinem Rechner vorhanden, allerdings wird trotzdem immer die Catch-Meldung ausgegeben.
Bei uns in der Schule hat es so funktioniert, und jetzt weiß ich nicht, woran das liegen könnte. Hab auch nichts in der Forum-durchsuchen-Funktion gefunden.
Der Dateipfad stimmt auf jeden Fall.
Ich habe auch schon einiges ausprobiert, hat aber alles nichts gebracht.

Kann mir einer von euch helfen?

Liebe Grüße
 

Michael...

Top Contributor
Lass doch mal im catch
Java:
e.printStackTrace();
ausgeben. Dadurch sollte man eher erfahren warum es zum Fehler kommt.
 

Joy

Mitglied
hier die Fehlermeldung:

Java:
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] Datenbank '(unbekannt)' konnte nicht geöffnet werden. Entweder wird die Datenbank nicht von Ihrer Anwendung erkannt, oder die Datei ist beschädigt.
	at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6879)
	at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7036)
	at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:3028)
	at sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:323)
	at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:174)
	at java.sql.DriverManager.getConnection(DriverManager.java:512)
	at java.sql.DriverManager.getConnection(DriverManager.java:171)
	at paket_Spiel.DBZugriff.oeffnen(DBZugriff.java:19)
	at paket_Spiel.Methode.erfassen(Methode.java:62)
	at paket_Spiel.Erstellen.bsHinzufuegenActionPerformed(Erstellen.java:138)
	at paket_Spiel.Erstellen$2.actionPerformed(Erstellen.java:69)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1764)
	at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1817)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:419)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:257)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
	at java.awt.Component.processMouseEvent(Component.java:5134)
	at java.awt.Component.processEvent(Component.java:4931)
	at java.awt.Container.processEvent(Container.java:1566)
	at java.awt.Component.dispatchEventImpl(Component.java:3639)
	at java.awt.Container.dispatchEventImpl(Container.java:1623)
	at java.awt.Component.dispatchEvent(Component.java:3480)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3450)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3165)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3095)
	at java.awt.Container.dispatchEventImpl(Container.java:1609)
	at java.awt.Window.dispatchEventImpl(Window.java:1590)
	at java.awt.Component.dispatchEvent(Component.java:3480)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:450)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:197)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:144)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:136)[/Java]

DBZugriff.oeffnen(DBZugriff.java:19):
[Java]objVerbindung=DriverManager.getConnection(mTreiber,"","");

Methode.erfassen(Methode.java:62):
Java:
objZugriff.oeffnen();

Erstellen.bsHinzufuegenActionPerformed(Erstellen.java:138):
Java:
objWort.erfassen();

Erstellen$2.actionPerformed(Erstellen.java:69):
Java:
bsHinzufuegen.setText("Hinzufügen");
bsHinzufuegen.setVisible(true);
bsHinzufuegen.setPreferredSize(new java.awt.Dimension(117,20));
bsHinzufuegen.setBounds(new java.awt.Rectangle(12,86,117,20));
this.getContentPane().add(bsHinzufuegen, new AnchorConstraint(758,351, 934, 33, 1, 1, 1, 1));
bsHinzufuegen.addActionListener( new ActionListener() {
public void actionPerformed(ActionEvent evt) {
	bsHinzufuegenActionPerformed(evt);
}


Kann es sein, dass es deswegen nicht funktioniert, weil ich die Access Datenbank erst unter *.accdb gespeichert habe?
 

Michael...

Top Contributor
Hast Du die Datei einfach nur in Endung accdb umbenannt oder ist das eine echte Access 2007 Datenbank.
In letzterem Fall müsste Dein TreiberString in etwa so ausssehen:
Java:
String mTreiber=
"jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\\meineDatenbank.accdb";
Vorrausgesetzt, dass der Treiber
Code:
Microsoft Access Driver (*.mdb, *.accdb)
auf Deinem System vorhanden ist.
 

Joy

Mitglied
vielen Dank!
Mit dem
Code:
Microsoft Access Driver (*.mdb, *.accdb)
hat es jetzt funktioniert! :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H JDBCODBC - Connection-Objekt Datenbankprogrammierung 3
C Datenbankanbindung ohne ODBC JDBC Brücke Datenbankprogrammierung 5
MongoDB-Datenbank in Androidstudio einbinden Datenbankprogrammierung 1
S ODBC Treiber in Java Editor einbinden Datenbankprogrammierung 3
H Java Class zum komprimieren von Jpeg-Images zum Einbinden in Oracle DB - Bild als blob (in und out) Datenbankprogrammierung 23
B CSV in Java einbinden und Rechnung Datenbankprogrammierung 7
C Über Classpath MongoDB Treiber einbinden und korrekte import Pfade Datenbankprogrammierung 8
H SQLite Sqlite Datenbank direkt einbinden. Datenbankprogrammierung 5
M Schichtplaner in Windows Kalender einbinden Datenbankprogrammierung 0
D HSQLDB HSQLDB in PHP-Projekt einbinden? Datenbankprogrammierung 7
J Optimierung von Querys/ ausgegebene Tabelle mit in neue Anfrage einbinden Datenbankprogrammierung 2
F Dynamischen String in SQL Statement einbinden Datenbankprogrammierung 9
V Datenbank Access einbinden Datenbankprogrammierung 11
L MySQL MySql in eine Application einbinden? Datenbankprogrammierung 18
A MySQL MySQL Datenbank einbinden in GWT Datenbankprogrammierung 6
D MySQl Treiber in .jar Datei einbinden, Bukkit Datenbankprogrammierung 2
A Derby/JavaDB Probleme beim Einbinden Datenbankprogrammierung 2
NoXiD Access Datenbank in java einbinden ohne ODBC treiber zu erstellen Datenbankprogrammierung 5
E H2 in Projekt einbinden Datenbankprogrammierung 5
trash JDBC Einbinden Fehler Datenbankprogrammierung 9
D datenbank (hsqldb) in runnable jar einbinden Datenbankprogrammierung 2
Q Access Datenbank in eine Internetseite einbinden Datenbankprogrammierung 2
T HSQL einbinden !? Datenbankprogrammierung 6
J Bild aus Mysql Blob in Webseite einbinden Datenbankprogrammierung 9
M MySQL Datenbank einbinden - Riesenproblem Datenbankprogrammierung 6
G textfeld eingabe nicht in den SQL befehl einbinden Datenbankprogrammierung 14
C Automatisches Einbinden der Datenbank Datenbankprogrammierung 6
D Einbinden von MySQL Datenbankprogrammierung 11
N MySQL DB in Java einbinden ? Datenbankprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben