Entwickler-Ecke

Datenbanken - Zugriff auf Access Datenbank nur über den Pfad


Klaus Müller - So 01.02.09 12:53
Titel: Zugriff auf Access Datenbank nur über den Pfad
Liebe Programmierer,

In einem Programm muss ich auf ein Access Datenbank zugreifen.
Eigentlich habe ich nur den Pfad wo die Datenbank liegt.
Die Komponenten ADOConnection braucht aber eine ganze Menge mehr.
Was gib es da noch für eine Möglichkeit ein Verbindung herzustellen?


Andreas Schilling - Mo 02.02.09 08:12

Über ODBC.
Unter "Systemsteuerung --> Verwaltung --> Datenquellen(ODBC), dort eine Benutzer DNS hinzufügen, passenden Treiber auswählen --> [fertigstellen] --> "Datenquellennamen" vergeben und Datenbank auswählen. In der ADOConnection kann dann der Datenquellennamen ausgewählt werden, wenn der "Provider for ODBC Driver" ausgewählt wurde.


Bernhard Geyer - Mo 02.02.09 08:25

Bitte keinen Umweg über ODBC gehen.

In der ADO-Connection baust du erst mal eine feste Verbindung auf und kopierst dir den fertigen Text in deinen Quellcode. Den Abschnitt mit dem festen Pfad ersetzt du durch ein %s und schon kannst du mit Format(cMyConnectionString, [AktuellerPfad]) das dynamisch erstellen lassen.


Klaus Müller - So 08.11.09 11:50

Ich wollte mich bei euch für die schnelle Antwort bedanken.
Habe den Zugriff so aufgebaut:



Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
Function DB_open(Var Connection:TADOConnection;DB_Path:String):Boolean;
Begin
  //LoginPrompt ausschalten
  Connection.LoginPrompt := False;

    //DB Verbindungs- String Bei Direktverbindung
    Connection.ConnectionString:=
    'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + DB_Path;

  If Form1.ADOConnection1.Connected
  then result:=True
  Else Begin
    Try
      Connection.Open;
      Result:=True;
    Except
      Result:=False;
    End;
  End;

  If Result then
  Else ShowMessage('Bitte überprüfen Sie unter [Optionen] - [Einstellungen]' + #13 +
                   'die Verbindung zur Datenbank!');
End;


Moderiert von user profile iconKlabautermann: Delphi-Tags hinzugefügt.