Zum Inhalt springen
L

Wikipedia · einfach zusammengefasst · Stand

Relation (Datenbank)

Eine Relation besteht aus Tupeln, jedes Tupel wird durch Attribute beschrieben, die den Typ (mögliche Attributwerte) festlegen und mit einem Attributnamen …

Inhalt4 Abschnitte
  1. 1. Grundbegriff der Relation
  2. 2. Relationen als Tabellen
  3. 3. Mengencharakter und mögliche Tupel
  4. 4. Wichtige Fachbegriffe

Grundbegriff der Relation

Die Datenbankrelation beruht auf der mathematischen Definition einer Relation in der relationalen Algebra. Eine Relation besteht aus Tupeln. Ein Tupel ist ein Datensatz, der durch Attribute beschrieben wird. Jedes Attribut besitzt einen Attributnamen und einen Typ beziehungsweise Wertebereich. Der Wertebereich legt fest, welche Attributwerte möglich sind.

Im Datenbankbereich müssen die Begriffe Relation und Beziehung unterschieden werden: Relation heißt auf Englisch „relation“, Beziehung „relationship“. Diese begriffliche Trennung wird jedoch nicht immer konsequent verwendet.

Relationen als Tabellen

In relationalen Datenbanken wird eine Relation üblicherweise als Tabelle dargestellt. Dabei gilt:

  • Attribute entsprechen den Spaltenköpfen.
  • Attributwerte sind die Einträge in den Spalten.
  • Ein Tupel entspricht einer Zeile.

Attributwerte werden dabei häufig fälschlich selbst als Attribute bezeichnet.

Eine Relation kann sowohl aus dem Zusammenhang von Attributen beziehungsweise Attributwerten innerhalb einer Tabelle als auch aus einer Verknüpfung mehrerer Tabellen durch Fremdschlüssel bestehen. In ER-Modellen werden Entitäten und Beziehungen häufig grundsätzlich unterschieden. Im relationalen Modell sind jedoch sowohl Entitäten als auch Beziehungen als Relationen zu betrachten. Eine Beziehung zwischen zwei Tabellen entsteht durch das Zusammenführen zweier Relationen; ihre Elemente lassen sich dabei als Vereinigung der Elemente der beiden verknüpften Relationen auffassen.

ER-Modelle können bei der Entwicklung eines Datenbankschemas hilfreich sein. Für die grundsätzliche Strukturierung von Daten eignet sich das relationale Datenmodell mit seiner relationalen Algebra besser.

Mengencharakter und mögliche Tupel

Enthielte eine Tabelle für jede mögliche Kombination von Attributwerten eine eigene Zeile, würde sie das kartesische Produkt der Wertemengen ihrer Spalten darstellen. Tatsächliche Datenbanktabellen enthalten normalerweise nur eine sehr kleine Teilmenge dieser möglichen Tupel. Eine Tabelle ist daher im Allgemeinen eine Untermenge des kartesischen Produkts.

Die Belegung einer Tabelle wird als Menge aufgefasst. Die einzelnen Zeilen sind somit Elemente dieser Menge. Eine Zeile kann in der Tabelle enthalten sein oder nicht; von der Anzahl und Position eines Elements kann bei dieser Betrachtung nicht sinnvoll gesprochen werden. SQL erlaubt es zwar im Allgemeinen, ein Element, also eine Zeile mit derselben Wertebelegung, mehrfach einzufügen. Das ist jedoch sinnlos, weil mehrere Zeilen mit identischen Werten dieselbe Identität besitzen und logisch nicht voneinander unterschieden werden können.

Wichtige Fachbegriffe

Im relationalen Modell werden zahlreiche deutsche und englische Bezeichnungen verwendet, die teilweise dasselbe bedeuten:

  • Relation, Entitätstyp oder Entitätsklasse (relation): eine Menge gleichartiger Tupel; in einer Datenbank entspricht sie einer Tabelle.
  • Tupel oder Entität (tuple, entity): ein Datensatz einer Tabelle; es entspricht einer Zeile.
  • Beziehung (relationship): eine Verknüpfung von Tupeln, im relationalen Modell typischerweise über Fremdschlüssel realisiert.
  • Kardinalität (cardinality): die Anzahl der Tupel einer Relation.
  • Attribut (attribute): eine Spalte einer Tabelle, bestehend aus Attributnamen und zugehörigem Wertebereich.
  • Grad (degree): die Anzahl der Attribute einer Relation; auch Stelligkeit oder Arität genannt.
  • Primärschlüssel (primary key): ein Attribut oder eine Attributkombination zur eindeutigen Identifikation eines Tupels.
  • Fremdschlüssel (foreign key): eine Attributmenge in einer Relation, die auf den Primärschlüssel einer anderen Relation verweist.
  • Wertebereich (domain), auch Typ (type): die Werte, die ein Attribut annehmen kann.
  • Skalar (scalar), auch Wert (value): der Wert eines Attributes in einem Tupel.

Lernvideos zu Relation (Datenbank)

Weiterlesen