Mit dem Microsoft Access ODBC-Treiber von Easysoft können Sie mit Datenbanken im MDB-/ACCDB-Format in Umgebungen arbeiten, in denen sowohl Linux- als auch Windows-Benutzer auf diese Datenbank zugreifen müssen.
Beispielsweise möchten Sie möglicherweise eine Windows-basierte Access-Datenbank auf einer Intranet-Website veröffentlichen, die auf einem Linux-Server basiert. Dies ist das in diesem Blog behandelte Beispiel.
Dazu:
- Laden Sie den Access ODBC-Treiber herunter und installieren und lizenzieren Sie ihn auf Ihrem Linux-Webserver-Computer.
- Ändern Sie die Datenquelle ACCESS_SAMPLE in odbc.ini so, dass sie sich mit der Datenbank auf Ihrer Windows-Freigabe verbindet. Dazu:
[ACCESS_SAMPLE] Driver=Easysoft ODBC-ACCESS # Path to the database on Linux machine mdbfile=/home/samba/ms_access/Northwind.accdb # The SMB URL for the database file. Use this syntax for the SMB URL: # smb://windows_host/share/path/filename smbpath=smb://windows_machine/accounts_share/ms_access/Northwind.accdb # The path to the libsmbclient library on the Access ODBC driver machine. smblib=/usr/lib/libsmbclient.so smbuser=my_windows_user smbauth=my_winodws_password readonly=yes exclusive=no ignore_rel=no
- Testen Sie, ob Sie sich in
isql
verbinden können . Zum Beispiel:cd /usr/local/easysoft/unixODBC/bin ./isql.sh -v ACCESS_SAMPLE
- Installieren Sie das PHP PDO-ODBC-Paket und erstellen Sie eine PHP-Seite unter Ihrem Webserver, die eine Verbindung zur Access-Datenbank herstellt. Zum Beispiel:
<?php $con = odbc_connect("odbc:ACCESS_SAMPLE", "", ""); $err = odbc_errormsg(); if (strlen($err) <> 0) { echo odbc_errormsg(); } else { $rs2 = odbc_exec($con, "select * from Suppliers"); odbc_result_all($rs2); odbc_close($con); } ?>
Hinweis Sie müssen Berechtigungen festlegen, damit der Benutzer, unter dem der Webserver ausgeführt wird, z. www-data, hat Schreibzugriff auf die Access-Datenbankdatei.