6 Relationen
Einordnung des Kapitels
Eine Projektverwaltung speichert Benutzerkonten und Projekte in einer Datenbank. Damit ist aber noch nicht bekannt, wer an welchem Projekt mitarbeitet. Das Konto mia kann zu mehreren Projekten gehören, und an einem Projekt können mehrere Konten beteiligt sein. Wir brauchen also auch die Zuordnungen zwischen Konten und Projekten.
Dafür genügt eine Tabelle mit zwei Spalten: Konto und Projekt. Jede Zeile hält eine Zuordnung fest, etwa \((\text{mia},\text{portal})\) um auszudrücken das Nutzer mia am Projekt portal mitarbeitet. Fassen wir diese geordneten Paare zu einer Menge zusammen, erhalten wir eine Relation. Diese Sicht auf Tabellen als Mengen von Tupeln verbirgt sich hinter dem Begriff des relationalen Datenbankmodells.
Ähnliche Fragen begegnen uns an vielen Stellen in der Informatik:
- Welches Konto darf welche Datei lesen?
- Welches Softwarepaket benötigt welches andere Paket?
- Welcher Nutzer hat mehr Bearbeitungsrechte als ein welcher andere
Nutzer?
Mathematisch gesehen ist eine Relation also eine Menge geordneter Paare und damit eine Teilemenge des kartesischen Produkts. Um Relationen genauer zu untersuchen, voneinadner zu unterscheiden und sinnvoll zu verwenden, defieren wir im Folgenden spezielle Eigenschaften, welche eine Relation erfüllen kann.
In diesem Kapitel lernen wir also, Beziehungen verschiedener Objekte mit Hilfe von Relationen darzustellen. Wir lernen Relationen hinsichtlich Ihrer Eigenschaften zu untersuchen und sie miteinander zu verknüpfen.
Danach betrachten wir zwei besondere Arten von Relationen:
- Äquivalenzrelationen fassen Elemente zusammen, die in einer bestimmten Hinsicht gleich sind;
- Ordnungsrelationen beschreiben ein „kleiner als“ oder „kommt vor“ in der Sprache der Relationen
Lernziele
Nach diesem Kapitel können Sie
- Relationen als Paarmenge, Tabelle und Graph darstellen,
- Vollständigkeit, Eindeutigkeit und die Eigenschaften einer Relation auf einer Menge prüfen,
- Projektionen, inverse Relationen und Kompositionen bestimmen,
- reflexive, symmetrische und transitive Hüllen konstruieren,
- Äquivalenzklassen und Quotientenmengen angeben sowie
- endliche Ordnungen im Hasse-Diagramm darstellen und Schranken und Extremalelemente ablesen.