Kapitel 41
Einsatz in Mehrbenutzerumgebungen
876
Access-Datenbanken können prinzipiell im Netzwerk eingesetzt werden, so dass mehrere Benutzer
Zugriff auf die gleichen Daten erhalten. Dazu wird einfach die Datenbank auf einem Netzwerklauf-
werk bereitgestellt. Mehrere Benutzer können gleichzeitig die gleiche Datenbank öffnen und mit den
darin vorhandenen Daten arbeiten. Dies wird als Mehrbenutzer- oder Multi-User-Zugriff bezeichnet.
In der Praxis wird in den meisten Fällen eine Trennung zwischen den eigentlichen Daten und den
Formularen, Berichten usw. vorgenommen, indem eine Aufteilung in Front-End und Back-End vor-
genommen wird. In Kapitel 13, »Tabellen verknüpfen und importieren«, haben wir Ihnen diese
Möglichkeiten im Abschnitt »Verteilung: Daten und Programme« schon beschrieben.
Das Grundproblem aber bleibt das gleiche, ob Sie mit einer Datei oder einer Verteilung auf Front-
End und Back-End arbeiten: Es muss sichergestellt werden, dass sich die verschiedenen Benutzer
nicht gegenseitig stören und einander unbeabsichtigt Daten überschreiben.
Mit dem folgenden kleinen Szenario möchten wir Ihnen beschreiben, welche Probleme in einer
Mehrbenutzerumgebung auftreten können.
Stellen Sie sich vor, CineCity betreibt ein Reservierungssystem für Kinoplätze. An mehreren Telefonan-
nahmeplätzen werden Reservierungen entgegengenommen. Alle Mitarbeiter an den Annahmeplätzen
greifen auf die gleiche Reservierungstabelle zu. Nun rufen zwei Kunden an, die beide die letzten drei
Karten für den Film »Krass« reservieren möchten. Der Reservierungsauftrag von Kunde A wird von
Mitarbeiter X angenommen, während Kunde B mit Mitarbeiter Y telefoniert. Mitarbeiter X sieht in
der Reservierungstabelle nach und erhält die Angabe über die drei freien Plätze auf dem Bildschirm.
Mitarbeiter Y führt zur gleichen Zeit den gleichen Vorgang aus. Beide sagen nun ihrem Kunden, dass
die drei Plätze frei wären und reservieren sie. Nun, Sie können sich vorstellen, welchen Ärger es später
im Kino geben würde: Beide Kunden haben eine Reservierung für die gleichen Plätze!
Die Vergabe der Plätze kann nur nach dem Schema: »Wer zuerst kommt, mahlt zuerst!« erfolgen.
Wenn die erste Reservierung erfolgt ist, müssen alle anderen Benutzer, die gleichzeitig dieselben
Daten verwenden, von der Änderung informiert werden. Für unser Beispiel heißt das, in dem
Moment, wenn der erste Mitarbeiter die Reservierung vorgenommen hat, darf eine weitere Reser-
vierung der Plätze nicht mehr durchgeführt werden.
Access bietet eine Reihe von Möglichkeiten und Befehlen, den gleichzeitigen Zugriff mehrerer
Benutzer durch so genannte Sperrungen, engl. »Lockings«, zu regeln.
Datenzugriffe im Netzwerk
Greifen mehrere Benutzer gleichzeitig auf dieselbe Datenbank zu, muss der gegenseitige Zugriff
geregelt sein. Nehmen mehrere Benutzer Änderungen an dem gleichen Datensatz vor, müssen die
Benutzer über diesen mehrfachen Zugriff informiert werden, denn sonst werden die Daten gespei-
chert, die zuletzt in die Datenbank geschrieben wurden.
Beim Einsatz von Access in einer Netzwerkumgebung sollten Sie beachten, dass
Access hier für eine sehr hohe Netzwerklast verantwortlich sein kann. Wenn mehrere Anwender
mit dem auf ihrem PC installierten Access auf eine Access-ACCDB-Datenbank zugreifen, die auf
einem Netzwerkserver abgelegt ist, findet die eigentliche Datenverarbeitung trotzdem auf den
jeweiligen lokalen PCs statt. Durchsucht einer der Anwender die Access-Datenbank, so wird die
Sucharbeit von seinem lokalen PC geleistet, der sich dazu die Daten vom Netzwerkserver über
das Netzwerk lädt. Dabei kann es schon vorkommen, dass für die lokale Verarbeitung fast die
gesamte ACCDB über das Netzwerk transportiert wird. Und wenn dies mehrere Anwender
gleichzeitig tun, wird das Netzwerk entsprechend stark belastet.
WICHTIG
Datenzugriffe im Netzwerk
877
Erstellung kompletter
Anwendungen
Für große Datenbanken im Netzwerk empfiehlt sich der Einsatz eines Datenbankservers. Ein
Datenbankserver, wie beispielsweise der Microsoft SQL Server, ist ein Programm, das auf dem
Netzwerkserver installiert wird. Vom Client, also dem lokalen PC, erhält der Datenbankserver
Anfragen, meist in Form von SQL-Abfragen. Der Datenbankserver ermittelt das Ergebnis der
Abfrage und sendet das Ergebnis an den Client. Für die Ermittlung des Ergebnisses werden die
Daten nur innerhalb des Servers verarbeitet, über das Netzwerk werden nur Anfrage und Ergeb-
nis transportiert.
Allgemeine Einstellungen
Wir möchten Ihnen die standardmäßigen Sperrmechanismen anhand der Einstellungsmöglich-
keiten in Access erläutern. Unter der Kategorie Erweitert in den Access-Optionen werden Ihnen eine
Reihe von Festlegungen für den Mehrbenutzerbetrieb geboten.
Abbildg. 41.1
Mehrbenutzereinstellungen
Wenn eine Datenbank von einem Benutzer geöffnet wird, darf sie nicht im exklusiven Modus gela-
den werden, denn dann hat nur ein Benutzer »exklusiv« Zugriff auf die Datenbank. Die Standard-
einstellung, die auch im Dialogfeld eingetragen ist, ist der Modus Freigegeben. Dabei müssen alle
Benutzer, die auf eine Datenbank gleichzeitig zugreifen, Freigegeben selektiert haben.
In der Gruppe Standard bei Datensatzsperrung wird festgelegt, nach welchem Verfahren die gleich-
zeitige Änderung von Datensätzen behandelt werden soll. Die folgende Tabelle erläutert die verschie-
denen Verfahren, die im Abschnitt »Die Verfahren zur Datensatzsperrung« beschrieben werden.

Get Microsoft Office Access 2007 - 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.