Herstellen einer Verbindung zu Microsoft Access-Datenbanken (FireDAC)

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu Datenbankkonnektivität (FireDAC)

In diesem Thema wird beschrieben, wie eine Verbindung zu Microsoft Access-Datenbankdateien hergestellt wird.

Unterstützte Versionen

Der native FireDAC-Treiber unterstützt Datenbanken aus Microsoft Access 95, 97, 2000, 2003, 2007 und 2010.

Windows-Client-Software

Für FireDAC muss einer der x86- oder x64-ODBC-Treiber von Microsoft Access auf dem Arbeitsplatz-Computer installiert sein:

  • "Microsoft Access-Treiber (*.mdb)": x86-ODBC-Treiber, Version 3 oder höher (oft auch als Microsoft JET ODBC-Treiber bezeichnet) für 95-2003-Datenbanken. Siehe Details. Sie können auch einen der alternativen für nicht-englische Sprachen bereitgestellten Treiber verwenden.
  • "Microsoft Access Driver (*.mdb, *.accdb)". x86- und x64-ODBC-Treiber, Version 12 oder höher für 95-2010-Datenbanken. Siehe Details.

Hinweis: Um eine Microsoft Access-x86- oder -x64-Laufzeit auf einem Arbeitsplatz-Computer mit einer bereits installierten Laufzeit einer anderen Architektur zu installieren, geben Sie in der Befehlszeile des Laufzeit-Installationsprogramms "/passive" an. Weil die Object Pascal-IDE eine x86-Anwendung ist, müssen Sie die x86-Version von Access auf Ihrem Entwicklungs-Computer installieren.

Wenn der Microsoft Access ODBC-Treiber nicht ordnungsgemäß installiert wurde, wird beim Verbindungsversuch eine Exception ausgelöst:

 
 [FireDAC][Phys][ODBC][Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified.
 

Beim Versuch, eine mit einer neueren Access-Version erstellte DB mit einem älteren Access-Treiber zu öffnen, wird eine Exception ausgelöst:

 
 [FireDAC][Phys][ODBC][Microsoft][ODBC Microsoft Access Driver] Cannot open database '(unknown)'.
 It may not be a database that your application recognizes, or the file may be corrupt.
 

Mac OS X- und iOS-Client-Software

FireDAC unterstützt keine Microsoft Access-Datenbankverbindungen für Linux, Mac OS X und iOS.

Treibereinbindung

So binden Sie den Treiber ein:

Verbindungsdefinitionsparameter

Für eine Verbindung mit einer Microsoft Access-Datenbank ist für die meisten Anwendungen die Angabe von DriverID und Database erforderlich (Einzelheiten finden Sie unter Definieren von Verbindungen (FireDAC)).

Hinweis: FireDAC unterstützt durch Passwort geschützte Datenbanken, aber die Länge des Passwortes darf 14 Zeichen nicht überschreiten. Bei längeren Passwörtern wird die Exception "Ungültiges Passwort" ausgelöst.

DriverID=MSAcc

Parameter Beschreibung Beispielwert
Database Der Pfad zur MDB-Datei. Ein Pfad kann Pfadvariablen enthalten. c:\mydb.mdb
SystemDB Der Pfad zur Systemdatenbankdatei. Ein Pfad kann Pfadvariablen enthalten. c:\mysystem.mdb
ReadOnly Geben Sie True an, um die Datenbank schreibgeschützt zu öffnen. False ist der Vorgabewert. True
StringFormat Definiert, wie String-Werte dargestellt werden sollen:
  • Choose – Darstellung als ftString/ftMemo in Nicht-Unicode-Object Pascal (D2007 und früher) und als ftWideString/ftWideMemo in Unicode-Object Pascal (D2009 und höher) (Vorgabe).
  • Unicode – immer als ftWideString oder ftWideMemo.
  • ANSI – immer als ftString/ftMemo.
Unicode
ODBCAdvanced Ermöglicht die Angabe eines beliebigen weiteren ODBC-Verbindungsparameterwertes. Der Vorgabewert ist "ExtendedAnsiSQL=1". IMPLICITCOMMITSYNC=NO

Anwendungsfälle

  • Öffnen der Microsoft Access-Datenbank.
 
 DriverID=MSAcc
 Database=c:\mydata.mdb
 
  • Öffnen der Microsoft Access-Datenbank unter Verwendung der Systemdatenbank.
 
 DriverID=MSAcc
 Database=c:\mydata.mdb
 SystemDB=c:\system.mdb
 User_Name=usr
 Password=pwd
 
  • Öffnen der durch Passwort geschützten Microsoft Access-Datenbank. Die Länge des Passwortes darf 14 Zeichen nicht überschreiten.
 
 DriverID=MSAcc
 Database=c:\mydata.mdb
 Password=pwd
 

Hinweis: Verwenden Sie zum Löschen/Erstellen, Verschlüsseln, Komprimieren und Reparieren der Datenbank die Komponente TADMSAccessUtility.

Siehe auch