Hallo allerseits,
Zu Testzwecken will ich auf eine Access-Datenbank zugreifen.
Ich habe mit MS-ACCESS eine einfache Datenbank demoDB1.MDB angelegt
und eine Tabelle erzeugt.
Leider gibt es schon bei der Anwesiung
demoDB1Connection =
DriverManager.getConnection(datenQuelle,"","");
die folgende Fehlermeldung:
[Microsoft][ODBC Microsoft Access Driver] Datei '(unbekannt)' nicht
gefunden.
Fragen:
1) Was muss ich machen, damit diese Fehlermeldung nicht mehr passiert?
(Ich habe keine Datenbank-Treiber oder Ähnliches installiert, da ich
gelesen habe, dass mit der Lösung (siehe unten) "keine DSN über die
Systemsteuerung eingerichtet werden muss".
Wo bekommt man die "Microsoft-Access-Treiber" her, falls sie benötigt
werden?
Ich denke, dass bei der Installation von MS-Access auch die Treiber
installiert werden, oder was muss man da noch machen?
2)
Müssen die Buchstaben im Datenpfad alle groß geschreiben werden?
also:
C:/DEMODB1.MDB
mfg
Ernst
------------------------------------------------
----------------------------------------------------------------------------
Zu Testzwecken will ich auf eine Access-Datenbank zugreifen.
Ich habe mit MS-ACCESS eine einfache Datenbank demoDB1.MDB angelegt
und eine Tabelle erzeugt.
Leider gibt es schon bei der Anwesiung
demoDB1Connection =
DriverManager.getConnection(datenQuelle,"","");
die folgende Fehlermeldung:
[Microsoft][ODBC Microsoft Access Driver] Datei '(unbekannt)' nicht
gefunden.
Fragen:
1) Was muss ich machen, damit diese Fehlermeldung nicht mehr passiert?
(Ich habe keine Datenbank-Treiber oder Ähnliches installiert, da ich
gelesen habe, dass mit der Lösung (siehe unten) "keine DSN über die
Systemsteuerung eingerichtet werden muss".
Wo bekommt man die "Microsoft-Access-Treiber" her, falls sie benötigt
werden?
Ich denke, dass bei der Installation von MS-Access auch die Treiber
installiert werden, oder was muss man da noch machen?
2)
Müssen die Buchstaben im Datenpfad alle groß geschreiben werden?
also:
C:/DEMODB1.MDB
mfg
Ernst
------------------------------------------------
Code:
import java.sql.*;
public class MainDB1 {
public static void main(String[] args) {
String datenQuelle;
Connection demoDB1Connection;
Statement StatementSQL;
ResultSet resultSet;
String AbfrageSQL;
try{
// Lädt die Klasse mit dem Namen "sun.jdbc.odbc.JdbcOdbcDriver"
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// getConnection(...) benötigt 3 Parameter:
// eine Datenquelle, einen User, ein Passwort
// eine Datenquelle ist wie folgt aufgebaut:
// jdbc:Subprotokoll:Datenquellennamen
// Für ODBC-Datenquellen ist das Subprotokoll obcd
//
datenQuelle = "jdbc:odbc:Driver={Microsoft Access Driver
(*.mdb)};DBQ=C:/DEMODB1.MDB";
// getConnection(...) liefert die Verbindung zur Datenbank zurück.
// obenstehender Pfad muss jeweils angepasst werden!
demoDB1Connection =
DriverManager.getConnection(datenQuelle,"","");
// Um Anfragen an die Datenbank stellen zu können benötigt man ein
// Objekt der Klasse Statement
StatementSQL = demoDB1Connection.createStatement();
AbfrageSQL = "SELECT Nr, Bezeichnung, Bestand FROM Artikel1 ";
AbfrageSQL = AbfrageSQL + "WHERE Nr = '1000';";
resultSet = StatementSQL.executeQuery(AbfrageSQL);
resultSet.close();
StatementSQL.close();
demoDB1Connection.close();
}
catch (ClassNotFoundException fehler){
System.out.println("DB konnte nicht geöffnet werden");
fehler.printStackTrace();
}
catch (SQLException fehler){
System.out.println("DB konnte nicht geöffnet werden");
fehler.printStackTrace();
}
}
}