Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

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

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.

jo also das klingt schonmal recht gut, aber wo finde ich odbc auf meinem system? oder muss ich da doch noch was installieren?

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ß

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?

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

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.