getCppKenntnisse() Geschrieben 30. Juni 2009 Geschrieben 30. Juni 2009 Hallo Comm., Ich arbeite gerade an einem kleinem Java-Projekt, bei dem ich einen Datenbank-Zugriff auf eine Access-Datei(*.mdb) machen möchte. Ich habe schon etwas im Internet recherchiert und folgendes zusammengebastelt. private void aktualisiereTabelle() { Vector columnNames = new Vector(); Vector data = new Vector(); try { String query = "SELECT * FROM Gerichte;"; Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=D:/JDBC/JavizzaDB.mdb","","" ); System.out.println("Connection Successful"); Statement stmt = con.createStatement(); ResultSet rst = stmt.executeQuery(query); ResultSetMetaData md = rst.getMetaData(); int columns = md.getColumnCount(); for (int i = 1; i <= columns; i++) { String colname=md.getColumnName(i); columnNames.addElement(colname); } while (rst.next()) { Vector row = new Vector(columns); for(int i = 1; i <= columns; i++) { row.addElement(rst.getObject(i)); } data.addElement(row); } rst.close(); stmt.close(); } catch(Exception e) { e.printStackTrace(); } JTable table = new JTable (data, columnNames); scrollTabelle.setViewportView(table); } Beim ausführen bekomme ich nun folgende Fehlermeldung: java.sql.SQLException: [Microsoft][ODBC-Treiber für Microsoft Access] Datei '(unbekannt)' nicht gefunden. Kann mir jmd. wie ich diesen Fehler behebe? Ich habe gelesen dass man keine extra Treiber installieren muss für diese Lösung. Danke schonmal im vorraus Zitieren
Herzbert Geschrieben 30. Juni 2009 Geschrieben 30. Juni 2009 Hallo, also bei der Methode getConnection ist ja der erste Parameter die URL die man bei deim ODBC in Windows Festlegt. dann einen Namen für deine Datenbank im ODBC festlegen und dann müsste es ungefär so aussehen: Connection con = DriverManager.getConnection( "jdbc:odbc:<Name den du beim ODBC eingetragen hast>", "", ""); so müsste es eigentlich funktionieren. Zitieren
getCppKenntnisse() Geschrieben 1. Juli 2009 Autor Geschrieben 1. Juli 2009 jo also das klingt schonmal recht gut, aber wo finde ich odbc auf meinem system? oder muss ich da doch noch was installieren? Zitieren
Herzbert Geschrieben 1. Juli 2009 Geschrieben 1. Juli 2009 ich gehe davon aus das du Windows Benutzt, dann müsste es Standardmäßig unter Start | Einstellungen | Systemsteuerung | Verwaltung | Datenbankquellen(ODBC) DA müsstest du natürlich die Access Datenbank einirichten, der Benutzername der Datenquelle ist dann nach jdbc:odbc:<Name der Datenquelle> angehängt bei der Methode. Gruß Zitieren
Dragon8 Geschrieben 1. Juli 2009 Geschrieben 1. Juli 2009 So kann man das auch machen, aber ehrlich gesagt finde ich die Lösung etwas bescheiden, wenn man mal davon ausgeht, dass wenn man das Programm auf anderen PCs einsetzen will, jedes mal die Datenquelle pflegen müsste. Also so wie du bisher die Access Datenbank angegeben hast, war das auch richtig. Ich habe es nochmal selbst ausprobiert, und wenn ich bei mir ne Datenbank in deinen Code einsetze, dann funktioniert das so einwandfrei. Liegt die Datenbank denn wirklich unter genau dem Namen und der Pfad? Zitieren
getCppKenntnisse() Geschrieben 1. Juli 2009 Autor Geschrieben 1. Juli 2009 Hi , Danke für eure Hilfe ich habs gelöst. Ist mir schon fast a weng peinlich meinen Fehler zu beschreiben... Es lag wirklich nicht die richtige Datei in dem verwendeten Verzeichnis, ich hatte nur ein Verknüpfung auf die Datei erstellt... aber dsa macht nichts ich gebe Vista die Schuld! Also danke nochmal. mfg Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.