Mit Microsoft Access auf MySQL zugreifen
Sind etwas komplexere Abfragen auf einer MySQL-Datenbank gefragt, ist eine grafische Unterstützung, um die Relationen abzubilden, nicht das schlechteste Mittel der Hilfe. Dazu bietet sich in erster Linie eine Verbindung via ODBC von einem andern System auf den Datenbank-Server an. Vorzugsweise nutzt man dazu Access aus dem Hause Microsoft, weil dort die grafische Umsetzung der Abfragen recht gut gelungen ist. Ausserdem nutzt Access mit ein paar Ausnahmen den offiziellen Syntax für SQL-Statements.
Für mich besteht die Herausforderung noch darin, dass ich kein Windows auf einem Rechner installiert habe. Für den Mac, den ich ja so gerne nutze, gibt es auch eine Version der ODBC-Anbindung an einen MySQL-Rechner, hingegen bin ich nicht so stark im Bereich von Open Office und damit Base. Eventuell liesse sich die Geschichte auch mit Filemaker lösen.
Da ich ohnehin ab und an einen Windows-Server benötige, habe ich mir einen solchen mittels der Virtualisierungssoftware VMWare Fusion zugelegt und lasse den Server auf meinem MacBook starten. Dort habe ich dann auch die ODBC-Software installiert, dazu Access und das reicht eigentlich schon. Bei Access sollte es mindestens die Version aus dem Paket Office 2000 sein (Access 2000), damit eine Verbindung zustande kommt.

Die ODBC-Verbindung kann man dann in der Systemsteuerung / Verwaltung / ODBC Datenbankverbindungen in der Reiterkarte DSN-Verbindungen neu erstellen. Dazu wählt man beim Treiber die MySQL-Verbindung. Die übrigen Angaben sollten klar sein, die Werte in den beiden hinteren Reiterkarten Connect Options und Advanced müssen in der Regel gar nicht angepasst werden.
Nun erstellt man eine leere Datenbank mit Access und wählt dann unter Datei / externe Daten / Tabellen verknüpfen im unteren DropDown den letzten Wert ODBC Datenbanken(). Dort findet man dann die zuvor registrierte Datenbank. Nun braucht man sich nur noch diejenigen Tabellen auszuwählen, welche man für die Abfrage nutzen will und schon kann man eine solche erstellen. Es ist von der Bedienung her keinen Unterschied zu bemerken, ob es ich um verknüpfte oder lokale Tabellen handelt, mindestens bei den Abfragen nicht. Allerdings kann man die Tabellen via Access nicht verändern, da sie ja bloss verlinkt sind.

Etwas mühsam finde ich, dass sich allfällige Änderungen an den Tabellen nicht bemerkbar machen. Um geänderte Tabellen im Access neu einzulesen, muss man die Verknüpfung löschen und neu erstellen. Ist eine Abfrage fertig erstellt, kann man sich den SQL-Code anzeigen lassen (Menü Ansicht / SQL-Ansicht) und diesen dann direkt in jeder Anwendung nutzen, welche SQL unterstützt. Also zum Beispiel auch mit dynamischen PHP-Seiten.


Hinterlasse einen Kommentar