BEISPIEL
HINWEIS
HINWEIS
BEISPIEL
Import einer dBASE-Tabelle
SELECT *
INTO import
FROM test IN 'c:\' 'dBase IV;'
In die aktuelle Datenbank (Tabelle
Import
) wird die Datei
c:\test.dbf
importiert.
Die SQL-Anweisung können Sie entweder in einer Aktionsabfrage speichern und diese später aufrufen
(eventuell mit Parametern), oder Sie verwenden die Execute-Methode des Database-Objekts (DAO) bzw.
Connection-Objekts (ADO).
Weitere Informationen über die Arbeit mit SQL-Anweisungen finden Sie im Kapitel 8.
Replizieren von Datenbanken
Mit Hilfe der Aktenkoffer-Replikation können Sie mehrere Kopien einer Datenbank auf verschiedenen
Rechnern erzeugen. Die Bezeichnung »Kopie« trifft eigentlich nicht den Kern, werden doch die erzeugten
Duplikate bei Bedarf synchronisiert, d.h., es erfolgt ein Datenabgleich, sodass alle Versionen auf dem glei-
chen Stand sind.
Mit Einführung von Access 2007 war Microsoft der Meinung, dass es sich bei der Replikation um ein
überflüssiges und wenig genutztes Feature handelt. Datenbanken im Access 2007-Format unterstützen deshalb keine
Replikation mehr. Möchten Sie dennoch Daten replizieren, nutzen Sie die Möglichkeit, Datenbanken im Access 2003-Format zu
erstellen. Hier stehen dann die alten Features wie gewohnt zur Verfügung.
Ein Außendienstmitarbeiter möchte die Artikel-Stammdaten auf seinem Laptop speichern, gleichzeitig aber
soll in der Firma mit den Daten gearbeitet werden. In diesem Fall bietet sich eine Aktenkoffer-Replikation an.
Ist der Vertreter von seiner Dienstreise zurückgekehrt, kann er in der Firma die Daten auf seinem Laptop auf
den aktuellen Stand bringen, außerdem werden die von ihm vorgenommenen Änderungen in der Original-
datei gespeichert.
Im Zusammenhang mit der Replikation von Datenbanken sind drei Begriffe interessant:
Designmaster
Das »Original«. Diese Datenbank bestimmt das Layout aller Replikate, Änderungen an der Daten-
bankstruktur sind nur im Designmaster zulässig. Da es nur ein »Original« geben kann, kann auch nur
eine Datenbank in der Replikat-Gruppe der Designmaster sein. Bei der Umwandlung der Original-
datenbank in den Master werden strukturelle Änderungen vorgenommen. Dies betrifft beispielsweise
Zählerfelder, die in Felder mit eindeutigen Zufallswerten
1
umgewandelt werden. Weiterhin werden drei
neue Systemtabellen angelegt.
1
Die Verwendung von Zufallswerten ist nötig, um Überschneidungen beim Synchronisieren zu vermeiden.
577
Replizieren von Datenbanken
Kapitel 9: Fortgeschrittene Datenbankprogrammierung
Replikat
Eine »Kopie« der Originaldatenbank. Es kann lediglich die Datenbasis verändert werden, die Struktur
bestimmt der Designmaster.
Replikat-Gruppe
Alle Replikate, die von einem Designmaster abgeleitet wurden, sowie die Master-Datenbank.
Sowohl Designmaster als auch die Replikate können Objekte (Tabellen, Formulare etc.) enthalten, die nicht
in die Synchronisierung einbezogen werden (lokale Daten).
Um eine funktionierende Replikatgruppe aufzubauen,nnen Sie eine der vier folgenden Möglichkeiten
nutzen:
Microsoft Access, über den Menübefehl Datenbanktools/Verwalten/Replikationsoptionen
Aktenkoffer-Replikation
Programmierung mit Hilfe der DAO
Programmierung mit Hilfe der JRO.
Neben den Vorteilen der Replikation müssen Sie auch einige Nachteile in Kauf nehmen:
Sollen zwei Datenbanken abgeglichen werden, in denen hauptsächlich Änderungen (Updates) vorge-
nommen wurden, kann es leicht zu Konflikten kommen. Wird beispielsweise ein und derselbe
Datensatz in der Master- und in der Replikatdatenbank geändert, muss der auftretende Konflikt manu-
ell (mit Eingabemaske) beseitigt werden. Sie können sich vorstellen, zu welcher Sisyphus-Arbeit dies bei
mehreren hundert Datensätzen ausartet.
Ein weiteres Problem ist die Gewährleistung der Datenkonsistenz. Beispiel: Ein Vertreter kann sich nach
längerer Abwesenheit nicht mehr darauf verlassen, dass die Anzahl der Artikel in seiner Replikatdaten-
bank mit der tatsächlichen Anzahl (Masterdatenbank) übereinstimmt. Das Replikat stellt lediglich einen
»Schnappschuss« des letzten Abgleichs dar.
Sind mehrere Replikate von einer Datenbank erstellt worden, müssen diese regelmäßig untereinander
abgeglichen werden, um die Datenkonsistenz zu gewährleisten. Dies kann zu einem recht aufwändigen
Prozess ausarten, da jedes Replikat mit jedem anderen Replikat verglichen werden muss. Beispiel: Drei
Datenbanken A, B, C sollen synchronisiert werden. Dazu ist es notwendig, A mit B, B mit C und zuletzt
B mit A abzugleichen. In diesem Zusammenhang werden verschiedene Topologien eingesetzt (Stern,
Ring ...).
A
B
C
I
II
III
Abbildung 9.45 Beispiel für die Synchronisierung von drei Datenbanken
578

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.