Anbindung von Access oder Excel an MySQL
Stand: 10.07.2006:
Ob
- Überblick
- ODBC-Treiber für MySQL
- Den ODBC-Treiber installieren und konfigurieren
- Access mit MySQL verknüpfen
- Fehlerquellen
Überblick
Die Arbeitsmöglichkeiten und der Benutzungskomfort können erheblich verbessert werden, wenn eine MySQL-Datenbank mit Access oder Excel verknüpft wird. Der Benutzer arbeitet dann unter Access bzw. Excel und greift auf die Tabellen (Daten) in der MySQL-Datenbank zu. Der gesamte Funktionsumfang der beiden Office-Produkte Access und Excel steht dabei zur Verfügung. Arbeitet der Benutzer beispielsweise mit Access, so kann er
- neue Datensätze in der MySQL-Datenbank anfügen,
- vorhandene Datensätze editieren oder
- alle bzw. eine Teilmenge von Datensätzen aus einer Tabelle extrahieren und weiterverarbeiten.
Dabei ist es unerheblich, ob die MySQL-Datenbank unter Unix, Linux oder Windows95 bzw. NT betrieben wird.
Für die Kommunikation zwischen einer Windows-Anwendung und einem SQL-Datenbankserver wurde von der Firma Microsoft die ODBC-Schnittstelle (
ODBC="Open Database Connectivity Technology") geschaffen. Sie hat sich inzwischen zu einem Quasi-Standard entwickelt, da die Spezifikationen dieser Schnittstelle von Microsoft offengelegt worden sind.
Um über die ODBC-Schnittstelle mit einer anderen SQL-Datenbank kommunizieren zu können, müssen Treiberprogramme entwickelt und unter Windows installiert werden. Microsoft bietet bereits ODBC-Treiberprogramme für Access, Excel, dBASE, Paradox u.a. an. Weitere Treiberprogramme gibt es normalerweise bei den Datenbankentwicklern.
ODBC-Treiber für MySQL
Das Datenbanksystem MySQL wurde von der Firma TcX in Schweden entwickelt und kann über den WWW-Server
http://www.mysql.com/ bezogen werden. Dort ist auch der ODBC-Treiber für MySQL erhältlich.
Die zur Zeit aktuellen Versionen für Windows95/98 und WindowsNT sind:
- MyODBC 2.50.34 for Windows95 (full setup)
- MyODBC 2.50.34 for WindowsNT (full setup)
Den ODBC-Treiber installieren und konfigurieren
- Den ODBC-Treiber (zip-Datei) für Windows95/98 oder WindowsNT herunterladen.
- Die Datei entpacken und dann das Programm setup.exe aufrufen.
- Im Installationsfenster "Install Drivers" den Eintrag "MySQL" auswählen und dann MySQL installieren.
- Nach Installation des ODBC-Treibers erscheint das Fenster "Data Sources". Hier auf Add klicken.
- Im Fenster "Add Data Sources" den Eintrag MySQL auswählen und auf OK klicken (Siehe Abb. 1).
- Der OBDC-Treiber muss jetzt konfiguriert werden (Abb. 2).
In Abb. 2 ist das Fenster zum Konfigurieren der ODBC-Schnittstelle wiedergeben. Sie müssen hier die Beschreibungsmerkmale (Datenbankname und Rechnername) Ihrer MySQL-Datenbank eingeben. Die hier eingetragenen Werte beziehen sich auf eine Datenbank mit dem Namen "test", die standardmäßig mit der Datenbanksoftware ausgeliefert wird.
Beschreibung der wichtigsten Eingabefelder:
- Windows DSN name: Dieser Name ist frei wählbar; er kennzeichnet die Datenbank auf ODBC-Ebene.
- MySQL host: Name des Rechners, auf dem die Datenbank installiert ist.
- MySQL database name: Name der MySQL-Datenbank
- User: Benutzerkennung des Datenbankbenutzer (Datenbank-Benutzerkennung)
- Password: Datenbank-Passwort (Wir empfehlen, das Datenbank-Passwort hier noch nicht einzutragen, sondern erst später beim Aufruf unter Access).
Access mit MySQL verknüpfen
Nachdem die ODBC-Schnittstelle konfiguriert wurde, können Sie von Access aus eine Verbindung zu einer MySQL-Datenbank herstellen. In der folgenden Beschreibung wird dafür die MySQL-Datenbank: test gewählt, die normalerweise als Test-Datenbank mitgeliefert wird.
- Rufen Sie Access auf und legen Sie eine leere Datenbank an.
- Öffnen Sie im Datenbankfenster das Pulldown-Menü: Datei und klicken Sie auf "Datenbank öffnen...".
- Sie befinden sich jetzt im Access-Fenster "Öffnen". Öffnen Sie dort das Listenfeld: Dateityp und klicken Sie das Feld "ODBC Databases()" an.
- Im nächsten Verarbeitungsschritt geht es um die Auswahl der Datenquelle. In Fenster "Datenquelle auswählen" werden die beiden Register: Benutzerdatenquelle und Computer-Datenquelle angezeigt. Öffnen Sie das Register: Computer-Datenquelle.
- In einem Listenfeld werden die bereits konfigurierten ODBC-Datenquellen angezeigt. Markieren Sie den Eintrag: Testdb und klicken Sie auf OK.
- Das ODBC-Konfigurationsprogramm wird gestartet und meldet sich mit dem Eingabe-Fenster (siehe Abb. 2). Die meisten Angaben sind bereits vorgegeben. Sie müssen jetzt nur noch das Datenbank-Passwort eingeben und können weitere Optionen auswählen; beispielsweise die Option "Trace MyODBC" setzen. Das Konfigurationsprogramm wird mit OK beendet.
- Die Verbindung zur Datenbank "
test" des MySQL-Servers wird hergestellt. Es erscheint ein neues Fenster mit dem Namen "Tabellen verknüpfen" und zeigt die Tabellen der Datenbank:testan. - Wählen Sie alle Tabellen aus und klicken Sie auf OK.
- In den folgenden drei Dialogen geht es um die eindeutige Identifzierung der Datensätze in den Tabellen:
testac,testad,testae. Da bei diesen Tabellen keine Primärschlüssel definiert worden sind, muss das jetzt auf Access-Ebene nachgeholt werden. Markieren Sie jeweils das Datenfeld:object_idund klicken Sie auf OK. - Nach Beendigung der drei Dialoge erscheint wieder das Access-Datenbankfenster und zeigt die drei Tabellen:
testac,testadundtestaean.
Die Verbindung zum MySQL-Server ist jetzt hergestellt, und Sie können auf die Daten der Datenbank "test" zugreifen.
Fehlerquellen
Die Unterschiede von MySQL und Access führen bei der Verknüpfung der beiden Systeme manchmal zu Fehlern, die schwer zu analysieren sind. Die folgende Aufzählung zeigt einige Beispiele aus der Praxis.
Namen von Objekten
MySQL erlaubt den Bindestrich in Namen (z.B. Namen von Feldern). Access ist hier strenger (SQL-konform).Das Problem besteht darin, dass beim Importieren einer solchen Tabelle auch die korrekten Feldnamen nicht anzeigt werden und so kein Hinweis auf die tatsächliche Fehlerursache erscheint. Das gilt auch für den Namen der Datenbank selbst. (Es reicht nicht, den Namen der ODBC-Datenquelle ohne Bindestrich zu schreiben).
Alle Angaben ohne Gewähr. Für Hinweise und Vorschläge wenden Sie sich bitte per E-Mail an:
Webmaster@hrz.uni-giessen.de
![[HRZ-Logo; anklickbar] [HRZ der JLU Gießen]](/hrz/bilder/hrzlogo6.gif)
![[JLU-Logo mit Wappen; anklickbar] [JLU-Logo mit Wappen; anklickbar; alt+j]](/hrz/bilder/jlu-logo.png)
![[Abb. 1; zum Vergrößern klicken] [Abb. 1; zum Vergrößern klicken]](mysqlbild1-klein.gif)
![[Abb. 2; zum Vergrößern klicken] [Abb. 2; zum Vergrößern klicken]](mysqlbild2-klein.gif)
