Saban Geschrieben 2. Februar 2009 Geschrieben 2. Februar 2009 Hallo Zusammen! ich versuche gerade meine Java Applikation an Access 2007 (accdb) anzubinden. Ich hab hierfür einfach den Code den ich mal für ne .mdb geschrieben hatte her genommen und den Teil .mdb durch .accdb ersetzt /* Datenbank Treiber laden --> bindet die Klasse ins Laufzeit-system ein */ try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); System.out.println("Treiber: 'sun.jdbc.odbc.JdbcOdbcDriver' wurde geladen"); } catch (ClassNotFoundException e) { System.err.println("Treiber-Klasse " + e + " konnte nicht geladen werden!"); System.exit(0); } /* Verbindung zur Datenbank aufbauen */ try { String db_url = "jdbc:odbc:Driver={Microsoft Access Driver (*.accdb)};DBQ=" + db_name.trim(); con = DriverManager.getConnection(db_url, user, passwd); System.out.println("Verbindung mit der Datenbank hergestellt!\n"); } catch (SQLException e) { System.err.println("Datenbank Verbindungsfehler!\n" + e); System.exit(0); } Ich bekomme aber dann immer den Fehler... Datenbank Verbindungsfehler! java.sql.SQLException: [Microsoft][ODBC Driver Manager] Der Datenquellenname wurde nicht gefunden, und es wurde kein Standardtreiber angegeben Der Pfad stimmt und wenn ich mit dem Code eine .mdb anbinde dann klappts wunderbar... :confused: Kann mir da jemand weiterhelfen? MfG Saban
Eminent Geschrieben 3. Februar 2009 Geschrieben 3. Februar 2009 Also ich muss gestehen ich frage mich was du da komisches bei der URL zusammenbaust, habe ich offen gestanden so noch nirgends gesehen. Ich für meinen Teil gehe bei der Anbindung von Access-Datenbanken grundsätzlich so vor. 1. Datenbank bei den ODBC-Datenquellen in Windows eintragen 2. Vergebenen Namen der ODBC-Datenquelle merken (z. B. AccessDB) 3. Java-Code (vereinfacht) Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") DriverManager.getConnection("jdbc:odbc:AccessDB", "user", "password") 4. Zugriff auf die Datenbank Hat bisher immer so funktioniert. Kann hier leider nicht ausprobieren weil wir hier jetzt in der Arbeit nur Office 2000 haben.
Dragon8 Geschrieben 3. Februar 2009 Geschrieben 3. Februar 2009 Die URL von Saban ist so schon richtig, wenn man sich halt eben nicht die Mühe machen will, oder nicht die Möglichkeit hat, die Datenbank in jedem System als Datenquelle anzugeben. Jedenfalls für Access Datenbanken bis 2003 klappt das so wunderbar.
Eminent Geschrieben 3. Februar 2009 Geschrieben 3. Februar 2009 Die URL von Saban ist so schon richtig, wenn man sich halt eben nicht die Mühe machen will, oder nicht die Möglichkeit hat, die Datenbank in jedem System als Datenquelle anzugeben. Jedenfalls für Access Datenbanken bis 2003 klappt das so wunderbar. Ok, schon mal was dazu gelernt :-)
Saban Geschrieben 3. Februar 2009 Autor Geschrieben 3. Februar 2009 Danke für eure Posts! ich hab das Problem gelöst und zwar muss zwischen *.mdb und *.accdb ein Leerzeichen. jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ
Amstelchen Geschrieben 3. Februar 2009 Geschrieben 3. Februar 2009 ich hab das Problem gelöst und zwar muss zwischen *.mdb und *.accdb ein Leerzeichen. ja, für die nachwelt: der treibername muss exakt mit jenem in systemsteuerung -> verwaltung > ODBC -> treiber übereinstimmen. s'Amstel
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