Leitfaden für Tabellenbeziehungen

Leitfaden für Tabellenbeziehungen

Eins der Ziele eines guten Datenbankentwurfs besteht darin, Datenredundanz (doppelte Daten) zu vermeiden. Um dieses Ziel zu erreichen, teilen Sie Ihre Daten in viele themenbasierte Tabellen auf, so dass jedes Faktum nur einmal dargestellt wird. Anschließend bieten Sie Access einen Weg, die aufgeteilten Informationen wieder zusammenzuführen – dies erreichen Sie indem sie gemeinsame Felder in Tabellen platzieren, die aufeinander bezogen sind. Um diesen Schritt ordnungsgemäß auszuführen, müssen Sie allerdings die Beziehungen zwischen Ihren Tabellen verstehen und diese Beziehungen anschließend in Ihrer Datenbank angeben.

Inhalt dieses Artikels

Einführung

Typen von Tabellenbeziehungen

Warum sollten Tabellenbeziehungen erstellt werden?

Grundlegendes zur referenziellen Integrität

Anzeigen von Tabellenbeziehungen

Einführung

Nach dem Erstellen einer Tabelle für alle Themen in der Datenbank, müssen Sie Access eine Möglichkeit zur Verfügung bereitstellen, mit denen diese Informationen bei Bedarf wieder zusammengeführt werden können. Hierzu fügen Sie gemeinsame Felder in verknüpfte Tabellen ein und definieren Beziehungen zwischen den Tabellen. Dann können Sie Abfragen, Formulare und Berichte erstellen, die Informationen aus verschiedenen Tabellen gleichzeitig anzeigen. Das hier gezeigte Formular enthält z. B. Informationen aus mehreren Tabellen:

Bestellformular mit entsprechenden Informationen aus fünf Tabellen gleichzeitig

1. Die Informationen in diesem Formular stammen aus der Tabelle "Kunden",

2. der Tabelle "Bestellungen",

3. der Tabelle "Artikel"

4. und der Tabelle "Bestelldetails".

Der Kundenname im Feld Rechnung an wird aus der Tabelle "Kunden" abgerufen, die Werte für "Bestell-Nr." und "Bestelldatum" aus der Tabelle "Bestellungen", der Produktname aus der Tabelle "Artikel" und die Werte für Einzelpreis und Stückzahl aus der Tabelle "Bestelldetails". Diese Tabellen sind auf verschiedene Art und Weise miteinander verknüpft, damit Informationen aus jeder Tabelle in das Formular übernommen werden können.

Im vorstehenden Beispiel müssen die Felder in den Tabellen koordiniert werden, damit sie Informationen zur gleichen Bestellung anzeigen. Diese Koordination wird mithilfe von Tabellenbeziehungen erreicht. Eine Tabellenbeziehung funktioniert durch Zuordnen von Daten in Schlüsselfeldern – oftmals ist das ein Feld, das in beiden Tabellen den gleichen Namen trägt. In den meisten Fällen bilden diese übereinstimmenden Felder den Primärschlüssel einer Tabelle, der einen eindeutigen Bezeichner für jeden Datensatz bereitstellt, und einen Fremdschlüssel in der anderen Tabelle. Beispielsweise können Mitarbeiter den Bestellungen, für die sie zuständig sind, zugeordnet werden, indem eine Tabellenbeziehung zwischen den Feldern "EmployeeID" (Mitarbeiter-ID) in der Tabelle "Employees" (Mitarbeiter) und der Tabelle "Orders" (Bestellungen) erstellt wird.

'Personal-Nr' dient als Primärschlüssel in der Tabelle 'Personal' und als Fremdschlüssel in der Tabelle 'Aufträge'.

1. "Personal-Nr" tritt in beiden Tabellen auf - als Primärschlüssel ...

2. ... und als Fremdschlüssel.

Seitenanfang

Typen von Tabellenbeziehungen

Es gibt drei Typen von Tabellenbeziehungen in Access.

  • 1:n-Beziehung

    Als Beispiel soll eine Datenbank für die Überwachung von Bestellungen verwendet werden, die die Tabellen "Kunden" und "Bestellungen" enthält. Ein Kunde kann eine beliebige Anzahl an Bestellungen aufgeben. Daraus folgt, dass für jeden in der Tabelle "Kunden" dargestellten Kunden viele Bestellungen in der Tabelle "Bestellungen" dargestellt werden können. Die Beziehung zwischen den Tabellen "Kunden" und "Bestellungen" ist eine 1:n-Beziehung.

    Zum Darstellen einer 1:n-Beziehung im Datenbankentwurf nehmen Sie den Primärschlüssel von der 1-Seite der Beziehung und fügen ihn als zusätzliches Feld oder Felder auf der n-Seite der Beziehung der Tabelle hinzu. In diesem Fall fügen Sie z. B. der Tabelle "Bestellungen" ein neues Feld hinzu, das Feld "ID" aus der Tabelle "Kunden", und bezeichnen dieses als "Kunden-ID". Die Kunden-ID in der Tabelle "Bestellungen" kann dann von Access zum Suchen des richtigen Kunden für die einzelnen Bestellungen verwendet werden.

  • m:n-Beziehung

    Lassen Sie uns jetzt die Beziehung zwischen den Tabellen "Artikel" und "Bestellungen" betrachten. Eine einzelne Bestellung kann mehrere Artikel enthalten. Andererseits kann ein einzelner Artikel in vielen Bestellungen angezeigt werden. Daher können für jeden Datensatz in der Tabelle "Bestellungen" viele Datensätze in der Tabelle "Artikel" vorhanden sein. Darüber hinaus kann jeder Datensatz in der Tabelle "Artikel" über zahlreiche Datensätze in der Tabelle "Bestellungen" verfügen. Diese Beziehung wird als m:n-Beziehung bezeichnet. Beim Ermitteln von vorhandenen m:n-Beziehungen zwischen den Tabellen müssen Sie beide Seiten der Beziehung berücksichtigen.

    Zum Darstellen einer Viele-zu-Viele-Beziehung muss eine dritte Tabelle erstellt werden, die oft als Zuordnungstabelle bezeichnet wird und die die Viele-zu-Viele-Beziehung in zwei 1:n-Beziehungen aufteilt. Sie fügen den Primärschlüssel aus einer der beiden Tabellen in die dritte Tabelle ein. Daraufhin nimmt die dritte Tabelle alle Vorkommen oder Instanzen der Beziehung auf. Zwischen der Tabelle "Bestellungen" und der Tabelle "Artikel" besteht z. B. eine Viele-zu-Viele-Beziehung, die durch Erstellen zweier 1:n-Beziehungen in der Tabelle "Bestelldetails" definiert wird. Eine Bestellung kann viele Artikel enthalten, und jeder Artikel kann in vielen Bestellungen vorhanden sein.

  • 1:1-Beziehung

    In einer 1:1-Beziehung kann jeder Datensatz in der ersten Tabelle lediglich über einen übereinstimmenden Datensatz in der zweiten Tabelle verfügen, und jeder Datensatz in der zweiten Tabelle nur über einen übereinstimmenden Datensatz in der ersten Tabelle. Diese Beziehung ist nicht üblich, da Informationen, die auf diese Art und Weise verknüpft sind, häufig in der gleichen Tabelle gespeichert werden. Sie können eine 1:1-Beziehung z. B. verwenden, um eine Tabelle mit vielen Feldern zu teilen, um einen Teil der Tabelle aus Sicherheitsgründen abzutrennen, oder um Informationen zu speichern, die nur für eine Untermenge der Haupttabelle gelten. Wenn Sie eine solche Beziehung identifizieren, muss von beiden Tabellen ein Feld gemeinsam genutzt werden.

Seitenanfang

Warum sollten Tabellenbeziehungen erstellt werden?

Sie können Tabellenbeziehungen ausdrücklich über das Fenster Beziehungen erstellen oder durch Ziehen eines Felds aus dem Bereich "Feldliste". Access verwendet Tabellenbeziehungen zum Verknüpfen von Tabellen, wenn diese in einem Datenbankobjekt verwendet werden. Es gibt mehrere Gründe, warum Tabellenbeziehungen vor dem Erstellen anderer Datenbankobjekte wie Formulare, Abfragen und Berichte erstellt werden sollten.

  • Tabellenbeziehungen liefern Informationen für das Abfragedesign

    Beim Arbeiten mit Datensätzen aus mehreren Tabellen muss häufig eine Abfrage zum Verknüpfen der Tabellen erstellt werden. Während der Abfrage werden die Werte im Primärschlüsselfeld der ersten Tabelle mit einem Fremdschlüsselfeld in der zweiten Tabelle abgestimmt. Erstellen Sie zum Zurückgeben von Zeilen, die alle Bestellungen für die einzelnen Kunden auflisten, eine Abfrage, die die Tabelle "Kunden" mit der Tabelle "Bestellungen" basierend auf dem Feld "Kunden-ID" verknüpft. Im Fenster "Beziehungen" können Sie die zu verknüpfenden Felder manuell angeben. Wenn bereits eine Beziehung für die Tabellen definiert ist, verwendet Access die Standardverknüpfung basierend auf der vorhandenen Tabellenbeziehung. Wenn Sie einen der Abfrage-Assistenten verwenden, nutzt Access darüber hinaus die Informationen aus den bereits definierten Tabellenbeziehungen, um Ihnen bessere Optionen vorzuschlagen und die entsprechenden Standardwerte für Eigenschafteneinstellungen automatisch einzutragen.

  • Tabellenbeziehungen liefern Daten für das Formular- und Berichtdesign

    Beim Entwerfen eines Formulars oder Berichts verwendet Access die Informationen aus den bereits definierten Tabellenbeziehungen, um Ihnen bessere Optionen vorzuschlagen und die entsprechenden Standardwerte für Eigenschafteneinstellungen automatisch einzutragen.

  • Tabellenbeziehungen bilden die Grundlage, auf der Sie referenzielle Integrität durchsetzen können, um verwaiste Datensätze in Ihrer Datenbank zu verhindern. Ein verwaister Datensatz ist ein Datensatz mit einem Verweis auf einen anderen Datensatz, der nicht vorhanden ist – beispielsweise ein Bestelldatensatz, der auf einen Kundendatensatz verweist, den es nicht gibt.

    Beim Entwerfen einer Datenbank werden die Informationen in Tabellen aufgeteilt, die alle über einen Primärschlüssel verfügen. Dann werden Fremdschlüssel als Verweis auf diese Primärschlüssel in verknüpften Tabellen hinzugefügt. Die Paare aus Fremdschlüssel und Primärschlüssel stellen die Basis für Tabellenbeziehungen und Abfragen für mehrere Tabellen dar. Es ist wichtig, dass diese Verweise zwischen Fremdschlüssel und Primärschlüssel stets synchronisiert werden. Durch die referenzielle Integrität, die von Tabellenbeziehungen abhängt, wird sichergestellt, dass Verweise synchronisiert bleiben.

Seitenanfang

Grundlegendes zur referenziellen Integrität

Beim Entwerfen einer Datenbank teilen Sie Ihre Datenbankinformationen in viele themenbasierte Tabellen auf, um Datenredundanz zu minimieren. Anschließend geben Sie Access eine Möglichkeit, die Daten wieder zusammenzuführen, indem Sie gemeinsame Felder in verwandte Tabellen einfügen. Um beispielsweise eine 1:n-Beziehung darzustellen, nehmen Sie den Hauptschlüssel von der "1"-Tabelle und fügen ihn der "n"-Tabelle als zusätzliches Feld hinzu. Um die Daten wieder zusammenzuführen, nimmt Access den Wert in der "n"-Tabelle und schlägt den entsprechenden Wert in der "1"-Tabelle nach. Auf diese Weise verweisen die Werte in der "n"-Tabelle auf die entsprechenden Werte in der "1"-Tabelle.

Gehen wir davon aus, dass Sie über eine 1:n-Beziehung zwischen Versandfirmen und Bestellungen verfügen und eine Versandfirma löschen möchten. Wenn die Versandfirma, die Sie löschen möchten, über Bestellungen in der Tabelle "Bestellungen" verfügt, "verwaisen" diese Bestellungen, sobald Sie denn Datensatz für die Versandfirma löschen. Die Bestellungen verfügen weiterhin über eine Versandfirmen-ID, die ID ist jedoch nicht mehr gültig, da der Datensatz, auf den verwiesen wird, nicht mehr vorhanden ist.

Der Zweck von referenzieller Integrität ist es, verwaiste Datensätze zu vermeiden und Verweise stets zu synchronisieren, sodass diese hypothetische Situation nicht eintritt.

Referenzielle Integrität wird durch deren Aktivierung für eine Tabellenbeziehung erzwungen (eine Schritt-für-Schritt-Anleitung finden Sie unter Erzwingen der referenziellen Integrität). Wenn sie aktiviert ist, verweigert Access Vorgänge, bei denen gegen die referenzielle Integrität für diese Tabellenbeziehung verstoßen wird. Dies bedeutet, dass Access Aktualisierungen verweigert, die das Ziel eines Verweises ändern sowie Löschvorgänge, mit denen das Ziel eines Verweises entfernt wird. Es ist möglich, dass Sie den Primärschlüssel für eine Versandfirma aus gutem Grund ändern müssen, die über Bestellungen in der Tabelle "Bestellungen" verfügt. In diesen Fällen ist es erforderlich, dass Access automatisch alle betroffenen Zeilen in einem Vorgang aktualisiert. Hierdurch stellt Access sicher, dass die Aktualisierung vollständig durchgeführt wird und Ihre Datenbank sich nicht in einem inkonsistenten Zustand befindet, in dem einige Zeilen aktualisiert sind, aber andere nicht. Aus diesem Grund unterstützt Access die Option Aktualisierungsweitergabe an verwandte Felder. Wenn Sie die referenzielle Integrität erzwingen, die Option Aktualisierungsweitergabe an verwandte Felder auswählen und dann einen Primärschlüssel aktualisieren, aktualisiert Access automatisch alle Felder, die auf den Primärschlüssel verweisen.

Es kann auch vorkommen, dass Sie eine Zeile und alle verknüpften Datensätze löschen müssen, z. B. einen Versandfirmendatensatz und alle verknüpften Bestellungen für die Versandfirma. Hierfür unterstützt Access die Option Löschweitergabe an verwandte Datensätze. Wenn Sie die referenzielle Integrität erzwingen und die Option Löschweitergabe an verwandte Datensätze auswählen und dann einen Datensatz auf der Primärschlüsselseite der Beziehung löschen, löscht Access automatisch alle Datensätze mit Verweis auf den Primärschlüssel.

Seitenanfang

Anzeigen von Tabellenbeziehungen

Klicken Sie auf Beziehungen auf der Registerkarte Datenbanktools, um die Tabellenbeziehungen anzuzeigen. Das Fenster "Beziehungen" wird geöffnet und zeigt die vorhandenen Beziehungen an. Wenn keine Tabellenbeziehungen definiert wurden und Sie das Fenster "Beziehungen" zum ersten Mal öffnen, fordert Access Sie dazu auf, dem Fenster eine Tabelle oder Abfrage hinzuzufügen.

Öffnen des Fensters "Beziehungen"

  1. Klicken Sie auf Datei und dann auf Öffnen.

  2. Wählen Sie die Datenbank aus, und öffnen Sie sie.

  3. Klicken Sie auf der Registerkarte Datenbanktools in der Gruppe Beziehungen auf Beziehungen.

    Wenn die Datenbank Beziehungen enthält, wird das Fenster "Beziehungen" angezeigt. Wenn die Datenbank keine Beziehungen enthält und Sie das Fenster "Beziehungen" zum ersten Mal öffnen, wird das Dialogfeld Tabelle anzeigen angezeigt. Klicken Sie auf Schließen, um das Dialogfeld zu schließen.

  4. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Beziehungen auf Alle Beziehungen.

    Dadurch werden alle definierten Beziehungen in Ihrer Datenbank angezeigt. Ausgeblendete Tabellen (Tabellen, für die das Kontrollkästchen Ausgeblendet im Dialogfeld Eigenschaften der Tabelle aktiviert ist) und die zugehörigen Beziehungen werden nur angezeigt, wenn im Dialogfeld Navigationsoptionen das Kontrollkästchen Ausgeblendete Objekte anzeigen aktiviert ist.

Eine Tabellenbeziehung wird durch eine Beziehungslinie zwischen Tabellen im Fenster "Beziehungen" dargestellt. Eine Beziehung, die keine referenzielle Integrität erzwingt, wird als dünne Linie zwischen den gemeinsamen Feldern dargestellt, die die Beziehung unterstützen. Wenn Sie die Beziehung durch Klicken auf die Linie auswählen, wird die Linie breiter angezeigt, um zu verdeutlichen, dass sie ausgewählt ist. Wenn Sie referenzielle Integrität für die Beziehung erzwingen, wird die Linie an den Enden breiter dargestellt. Darüber hinaus wird die Zahl 1 über den breiten Abschnitten der Linie auf der einen Seite der Beziehung und das Unendlichkeitssymbol (() über dem breiten Bereich der Linie auf der anderen Seite der Beziehung angezeigt.

Wenn das Fenster "Beziehungen" aktiv ist, können Sie zwischen den folgenden Befehlen im Menüband wählen:

Auf der Registerkarte Entwurf in der Gruppe Tools:

  • Beziehungen bearbeiten    Öffnet das Dialogfeld Beziehungen bearbeiten. Wenn Sie eine Beziehungslinie auswählen, können Sie auf Beziehungen bearbeiten klicken, um die Tabellenbeziehung zu ändern. Sie können auch auf die Beziehungslinie doppelklicken.

  • Layout löschen    Hiermit werden alle Tabellen und Beziehungen aus der Anzeige im Fenster "Beziehungen" gelöscht. Beachten Sie, dass mit diesem Befehl Tabellen und Beziehungen lediglich ausgeblendet und nicht gelöscht werden.

  • Beziehungsbericht    Erstellt einen Bericht, der die Tabellen und Beziehungen in Ihrer Datenbank anzeigt. Im Bericht werden lediglich die Tabellen und Beziehungen angezeigt, die im Fenster "Beziehungen" nicht ausgeblendet sind.

Auf der Registerkarte Entwurf in der Gruppe Beziehungen:

  • Tabelle anzeigen    Öffnet das Dialogfeld Tabelle anzeigen, sodass Sie Tabellen und Abfragen zur Anzeige im Fenster "Beziehungen" auswählen können.

  • Tabelle ausblenden    Blendet die ausgewählten Tabellen im Fenster "Beziehungen" aus.

  • Direkte Beziehungen    Zeigt alle Beziehungen und verknüpften Tabellen für die ausgewählte Tabelle im Fenster "Beziehungen" an, wenn diese nicht bereits angezeigt werden.

  • Alle Beziehungen    Zeigt alle Beziehungen und verknüpften Tabellen Ihrer Datenbank im Fenster "Beziehungen" an. Die ausgeblendeten Tabellen (Tabellen, für die das Kontrollkästchen Ausblenden im Dialogfeld Eigenschaften der Tabelle ausgeblendet wurde) und die zugehörigen Beziehungen werden nur angezeigt, wenn im Dialogfeld "Navigationsoptionen" das Kontrollkästchen "Ausgeblendete Objekte anzeigen" aktiviert ist.

  • Schließen    Schließt das Fenster "Beziehungen". Wenn Sie Änderungen am Layout des Fensters "Beziehungen" vorgenommen haben, werden Sie gefragt, ob Sie die Änderungen speichern möchten.

Seitenanfang

Ihre Office-Fähigkeiten erweitern
Schulung erkunden
Neue Funktionen als Erster erhalten
An Office Insider teilnehmen

War diese Information hilfreich?

Vielen Dank für Ihr Feedback!

Vielen Dank für Ihr Feedback. Es klingt, als ob es hilfreich sein könnte, Sie mit einem unserer Office-Supportmitarbeiter zu verbinden.

×