Select the product you need help with
Definieren der Beziehungen zwischen Tabellen in einer Microsoft Access-DatenbankArtikel-ID: 304466 - Produkte anzeigen, auf die sich dieser Artikel bezieht Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base: 304466
(http://support.microsoft.com/kb/304466/EN-US/
)
Defining relationships between tables in a Microsoft Access databaseAnfänger: Erfordert Kenntnisse der Benutzeroberfläche auf Einzelplatzrechnern. Dieser Artikel bezieht sich ausschließlich auf eine Microsoft Access-Datenbank (.mdb oder .accdb). In Artikel 304467
(http://support.microsoft.com/kb/304467/DE/
)
wird dieses Thema für Microsoft Access 2000 behandelt. In Artikel 304468
(http://support.microsoft.com/kb/304468/DE/
)
wird dieses Thema für Microsoft Access 97 behandelt. Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung. Auf dieser SeiteZusammenfassung Dieser Artikel beschreibt, wie man in einer Microsoft Access-Datenbank Beziehungen definiert. Er enthält die folgenden Themen:
Weitere InformationenWas sind Tabellenbeziehungen?In einer relationalen Datenbank wird es durch Beziehungen ermöglicht, redundante Daten zu vermeiden. Wenn Sie beispielsweise eine Datenbank erstellen, in der Informationen zu Büchern verfolgt werden sollen, könnten Sie eine Tabelle namens "Titel" haben, in der Informationen zu jedem einzelnen Buch gespeichert werden, z. B. der Titel des Buchs, das Veröffentlichungsdatum und der Verlag. Eventuell möchten Sie auch Informationen zum Verlag speichern, z. B. Telefonnummer, Adresse und Postleitzahl. Wenn diese Informationen alle in der Tabelle "Titel" gespeichert würden, würde die Telefonnummer des Verlags bei jedem einzelnen Titel abgespeichert, der von dem Verlag herausgegeben wird.Eine bessere Lösung besteht darin, die Verlagsdaten nur einmal in einer separaten Tabelle namens "Verlage" zu speichern. Sie würden dann einen Zeiger in die Tabelle "Titel" aufnehmen, der auf einen Eintrag in der Tabelle "Verlage" verweist. Wenn Sie sicherstellen möchten, dass Ihre Daten synchron sind, können Sie die referenzielle Integrität zwischen den Tabellen "Titel" und "Verlage" erzwingen. Beziehungen mit referenzieller Integrität gewährleisten, dass die Informationen in einer Tabelle mit den Informationen in einer anderen Tabelle übereinstimmen. Beispielsweise muss jeder Titel in der Tabelle "Titel" mit einem bestimmten Verlag in der Tabelle "Verlage" verknüpft sein. Ein Titel kann nicht für einen Verlag zur Datenbank hinzugefügt werden, der in der Datenbank nicht vorhanden ist. Typen von TabellenbeziehungenEine Beziehung wird hergestellt, indem Daten in Schlüsselspalten abgestimmt werden, in der Regel Spalten, die in beiden Tabellen denselben Namen haben. In den meisten Fällen wird der Primärschlüssel einer Tabelle, die einen eindeutigen Bezeichner für die einzelnen Zeilen enthält, mit einem Eintrag im Fremdschlüssel der anderen Tabelle abgestimmt. Beispielsweise kann der Umsatz mit den jeweiligen verkauften Titeln verknüpft werden, indem eine Beziehung zwischen der Spalte "Titel-ID" in der Tabelle "Titel" (dem Primärschlüssel) und der Spalte "Titel-ID" in der Tabelle "Umsatz" (dem Fremdschlüssel) erstellt wird.Es gibt drei Typen von Tabellenbeziehungen. Der Typ der erstellten Beziehung hängt davon ab, wie die verknüpften Spalten definiert sind. 1:n-BeziehungenEine 1:n-Beziehung ist der häufigste Beziehungstyp. Bei diesem Beziehungstyp kann eine Zeile in Tabelle A übereinstimmende Zeilen in Tabelle B haben, aber eine Zeile in Tabelle B kann nur eine übereinstimmende Zeile in Tabelle A haben. Beispielsweise haben die Tabellen "Verlage" und "Titel" eine 1:n-Beziehung: Jeder Verlag produziert viele Titel, aber ein Titel kann nur einen Verlag haben.Eine 1:n-Beziehung wird erstellt, wenn nur eine der verknüpften Spalten ein Primärschlüssel ist oder eine Bedingung (Constraint) hat. In Access wird die Primärschlüsselseite einer 1:n-Beziehung durch ein Schlüsselsymbol gekennzeichnet. Die Fremdschlüsselseite einer Beziehung wird durch ein Unendlichkeitssymbol gekennzeichnet. n:n-BeziehungenIn einer n:n-Beziehung kann eine Zeile in Tabelle A viele übereinstimmende Zeilen in Tabelle B haben und umgekehrt. Sie erstellen eine solche Beziehung durch die Definition einer dritten Tabelle, die als Zuordnungstabelle bezeichnet wird. Der Primärschlüssel dieser Tabelle besteht aus den Fremdschlüsseln aus den Tabellen A und B. Beispielsweise haben die Tabellen "Autoren" und "Titel" eine n:n-Beziehung, die durch eine 1:n-Beziehung jeder dieser Tabellen zur Tabelle "TitelAutoren" definiert ist. Der Primärschlüssel der Tabelle "TitelAutoren" ist die Kombination der Spalten "au_id" (Primärschlüssel der Tabelle "Autoren" und "titel_id" (Primärschlüssel der Tabelle "Titel").1:1-BeziehungenIn einer 1:1-Beziehung kann eine Zeile in Tabelle A nur eine übereinstimmende Zeile in Tabelle B haben und umgekehrt. Eine 1:1-Beziehung wird erstellt, wenn beide verknüpften Spalten Primärschlüssel sind oder Bedingungen (Constraints) haben.Dieser Beziehungstyp ist nicht häufig, da die meisten so verknüpften Informationen alle in einer Tabelle enthalten wären. Sie können eine 1:1-Beziehung z. B. verwenden,
Definieren von Beziehungen zwischen TabellenWenn Sie eine Beziehung zwischen Tabellen erstellen, müssen die verknüpften Felder nicht dieselben Namen haben. Sie müssen jedoch denselben Datentyp haben, es sei denn, das Primärschlüsselfeld ist ein AutoWert-Feld. Sie können ein AutoWert-Feld nur dann mit einem Nummernfeld abstimmen, wenn die Eigenschaft Feldgröße für beide Felder gleich ist. Sie können beispielsweise ein AutoWert-Feld und ein Nummernfeld abstimmen, wenn die Eigenschaft Feldgröße bei beiden Feldern "Long Integer" ist. Selbst wenn es sich bei beiden Feldern um Nummernfelder handelt, müssen sie dieselben Einstellungen für die Eigenschaft Feldgröße haben.Definieren von 1:n- oder 1:1-BeziehungenGehen Sie folgendermaßen vor, um eine 1:n oder eine 1:1-Beziehung zu erstellen:
Definieren von n:n-BeziehungenGehen Sie folgendermaßen vor, um eine n:n-Beziehung zu erstellen:
Referenzielle IntegritätDie referenzielle Integrität ist ein Regelwerk, mit dem Microsoft Access sicherstellt, dass die Beziehungen zwischen Datensätzen in verknüpften Tabellen gültig sind und verknüpfte Daten nicht versehentlich gelöscht oder geändert werden. Sie können die referenzielle Integrität festlegen, wenn alle folgenden Bedingungen erfüllt sind:
Aktualisierungs- und LöschweitergabeBei Beziehungen, in denen die referenzielle Integrität erzwungen wird, können Sie angeben, ob Microsoft Access Aktualisierungen oder Löschungen automatisch an verknüpfte Datensätze weitergeben soll. Wenn Sie diese Optionen einstellen, sind Lösch- und Aktualisierungsvorgänge zulässig, die normalerweise durch die Regeln der referenziellen Integrität verhindert würden. Wenn Sie in einer Primärtabelle Datensätze löschen oder Primärschlüsselwerte ändern, führt Microsoft Access die erforderlichen Änderungen in verknüpften Tabellen durch, um die referenzielle Integrität zu erhalten.Wenn Sie beim Definieren einer Beziehung das Kontrollkästchen Aktualisierungsweitergabe an verwandte Felder aktivieren, aktualisiert Microsoft Access bei jeder Änderung des Primärschlüssels eines Datensatzes in der Primärtabelle automatisch in allen verknüpften Datensätzen den Primärschlüssel auf den neuen Wert. Wenn Sie beispielsweise eine Kunden-ID in der Tabelle "Kunden" ändern, wird das Feld "KundenID" in der Tabelle "Bestellungen" automatisch für alle Bestellungen dieses Kunden geändert, so dass die Beziehung erhalten bleibt. Microsoft Access gibt Aktualisierungen weiter, ohne eine Meldung anzuzeigen. Hinweis: Wenn der Primärschlüssel in der Primärtabelle ein AutoWert-Feld ist, hat die Aktivierung des Kontrollkästchens Aktualisierungsweitergabe an verwandte Felder keine Wirkung, da Sie den Wert in einem AutoWert-Feld nicht ändern können. Wenn Sie beim Definieren einer Beziehung das Kontrollkästchen Löschweitergabe an verwandte Datensätze aktivieren, löscht Microsoft Access bei jeder Löschung von Datensätzen in der Primärtabelle automatisch die verknüpften Datensätze in der verknüpften Tabelle. Wenn Sie beispielsweise einen Kundendatensatz aus der Tabelle "Kunden" löschen, werden alle Bestellungen dieses Kunden automatisch aus der Tabelle "Bestellungen" gelöscht (das gilt auch für Datensätze in der Tabelle "Bestelldetails", die mit den Bestelldatensätzen verknüpft sind). Wenn Sie Datensätze aus einem Formular oder Datenblatt löschen und das Dialogfeld Löschweitergabe an verwandte Datensätze aktiviert ist, werden Sie von Microsoft Access gewarnt, dass verknüpfte Datensätze ebenfalls gelöscht werden können. Wenn Sie jedoch Datensätze über eine Löschabfrage löschen, löscht Microsoft Access die Datensätze in verknüpften Tabellen automatisch, ohne eine Warnung anzuzeigen. VerknüpfungstypenEs gibt drei Verknüpfungstypen:Option 1 definiert einen "Inner Join". Ein Inner Join ist eine Verknüpfung, bei der Datensätze aus zwei Tabellen in den Ergebnissen einer Abfrage nur dann hinzugefügt werden, wenn die Werte in den verknüpften Feldern eine festgelegte Bedingung erfüllen. In einer Abfrage ist die Standardverknüpfung ein Inner Join, der Datensätze nur dann selektiert, wenn die Werte in den verknüpften Feldern übereinstimmen. Option 2 definiert einen "Left Outer Join" (linke äußere Verknüpfung). Ein Left Outer Join ist eine Verknüpfung, bei der alle Datensätze von der linken Seite des LEFT JOIN-Vorgangs in der SQL-Anweisung der Abfrage zu den Abfrageergebnissen hinzugefügt werden, auch dann, wenn das verknüpfte Feld aus der Tabelle auf der rechten Seite keine übereinstimmenden Werte enthält. Option 3 definiert einen "Right Outer Join" (rechte äußere Verknüpfung). Ein Right Outer Join ist eine Verknüpfung, bei der alle Datensätze von der rechten Seite des RIGHT JOIN-Vorgangs in der SQL-Anweisung der Abfrage zu den Abfrageergebnissen hinzugefügt werden, auch dann, wenn das verknüpfte Feld aus der Tabelle auf der linken Seite keine übereinstimmenden Werte enthält. EigenschaftenArtikel-ID: 304466 - Geändert am: Mittwoch, 30. Mai 2007 - Version: 5.1 Die Informationen in diesem Artikel beziehen sich auf:
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
| SPRACHE AUSWÄHLEN
|


Zum Anfang








