Kapitel 12: XML in Theorie und Praxis
XML-Integration in Access
Nachdem Sie in den vorhergehenden Abschnitten die Verarbeitung von XML-Daten mit Hilfe des DOM
kennen gelernt haben, wollen wir Ihnen natürlich nicht die wesentlich einfacheren Varianten vorenthalten.
Das nötige fundamentale Rüstzeug haben Sie ja jetzt bereits, denn für das Verständnis einiger Abläufe dürf-
ten elementare Kenntnisse über das DOM unabdingbar sein, da alle im Weiteren genannten Verfahren
intern ebenfalls auf das DOM aufsetzen.
Welche weiteren Schnittstellen zu XML hat Access denn nun zu bieten?
Importieren
Da wäre natürlich zuerst einmal die Funktion Externe Daten/Importieren zu erwähnen, mit welcher der
Anwender unter anderem XML-Daten in seine Access-Datenbank importieren kann. Nach der Auswahl
einer Datei kann in einem weiteren Dialogfeld spezifiziert werden, ob
lediglich die Struktur,
die Struktur und die Daten
importiert werden sollen oder ob die Daten an eine vorhandene Tabelle angehängt werden sollen.
Abbildung 12.40 Dialog beim Importieren von XML-Dateien
Erster Versuch
Probieren Sie die genannte Funktion mit der aus den vorhergehenden Abschnitten bekannten Datei
Test7.xml werden Sie etwas enttäuscht sein. Sie finden nach dem Import vier neue Tabellen
»Deutschland«,
»EUROPA«,
»Frankreich« und
»WELT«
792
vor, die nicht miteinander verknüpft sind (siehe folgende Abbildung).
Abbildung 12.41 Die importierten XML-Daten
Nachdem sich die erste Enttäuschung gelegt hat, sollte ein Blick auf die XML-Datenbasis (siehe folgende
Abbildung 12.42) den Grund für dieses Verhalten erkennen lassen.
Abbildung 12.42 Ansicht im Internet Explorer
Zu verschieden sind die hierarchische XML-Struktur mit ihren fast beliebigen Schachtelungen und dem-
gegenüber die klar und eindeutig festgelegte relationale Struktur der Access-Datenbank. Dem Importfilter
bleibt in diesem Fall nichts anderes übrig, als alle Elemente mit Unterelementen als eigene Tabelle zu trans-
ferieren, wie es unser erster Versuch nicht eindrucksvoller belegen kann.
Zweiter Versuch
In diesem Fall wollen wir mit einer etwas geänderten XML-Struktur, aber den gleichen Daten einen zweiten
Anlauf wagen.
Im Gegensatz zum vorhergehenden Versuch haben wir es jetzt mit einem einheitlichen Set an Elementen zu
tun, die eine immer wiederkehrende Struktur aufweisen, also die besten Voraussetzungen für einen erfolg-
reichen Import der Daten.
793
XML-Integration in Access
Kapitel 12: XML in Theorie und Praxis
Abbildung 12.43 Geänderte Tabellenstruktur
Wie zu erwarten, werden wir vom Importfilter nicht enttäuscht, lediglich der Zusammenhang zwischen
»KONTINENT« und »LAND« ist verloren gegangen:
Abbildung 12.44 Die importierten Daten
Sehen wir uns den Zusammenhang zwischenden beiden obigen Abbildungen etwas genauer an, fällt folgen-
de Vorgehensweise des Filters auf: Ausgehend vom Root-Element werden die untergeordneten gleich-
artigen Knoten als ein Tabellenname interpretiert. Die Unter-Elemente dieser Knoten sind wiederum die
Spaltennamen der neuen Tabelle. Die Struktur-Umwandlung könnte auch wie folgt dargestellt werden:
Struktur Beispiel
<DATENBANK>
<TABELLE>
<Spalte_1>...</Spalte_1>
...
<Spalte_N>...</Spalte_N>
</TABELLE>
...
<TABELLE>
<Spalte_1>...</Spalte_1>
...
<Spalte_N>...</Spalte_N>
</TABELLE>
</DATENBANK>
<WELT>
<KONTINENT>
<NAME>...</NAME>
<FLÄCHE>...</FLÄCHE>
<EINWOHNER>...</EINWOHNER>
</KONTINENT>
...
<KONTINENT>
<NAME>...</NAME>
<FLÄCHE>...</FLÄCHE>
<EINWOHNER>...</EINWOHNER>
</KONTINENT>
</WELT>
Tabelle 12.10 Abbildung relationaler Strukturen im XML-Baum
794

Get Microsoft Office Access 2007-Programmierung - Das Handbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.