Zum Inhalt springen

Datenbank Anbindung (Access 2007)


Empfohlene Beiträge

Geschrieben

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

Geschrieben

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.

Geschrieben

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.

Geschrieben
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 :-)

Geschrieben

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

Geschrieben
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

post-27078-14430448222969_thumb.jpg

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...