Relation (Datenbanktechnik)

Relation (Datenbanktechnik)

Formale Grundlage der Relation im Sinne einer Datenbankrelation ist die mathematische Definition. Die Relation ist die Basis der relationalen Algebra, die von Edgar F. Codd entwickelt wurde. Eine Relation besteht aus Attributen und Tupeln. Ein Attribut beschreibt den Typ eines möglichen Attributwertes und bezeichnet ihn mit einem Attributnamen. Ein Tupel stellt eine konkrete Kombination von Attributwerten dar und wird im Datenbankbereich auch als Datensatz bezeichnet.

Relationen als Tabellen

Im Zusammenhang mit relationalen Datenbanken ist es üblich, eine Relation durch eine Tabelle zu beschreiben. In Tabellenform entsprechen die Attribute den Spaltenköpfen, die Attributwerte den in den Spalten vorhandenen Einträgen. Ein Tupel entspricht einer Zeile einer Tabelle.

Sowohl der Zusammenhang von Attributen bzw. Attributwerten innerhalb einer Tabelle, als auch eine Verknüpfung von Tabellen durch Fremdschlüssel, stellen eine Relation dar. Zu Irrtümern führt vermutlich die Verbreitung der Terminologie von ER-Modellen. Dort werden die Begriffe Entitäten (Entities) und Beziehungen (Relationships) gebraucht. Der Irrtum besteht darin, Entitäten und Beziehungen prinzipiell zu unterscheiden. Im Prinzip sind aber sowohl Entitäten als auch Beziehungen als Relationen zu betrachten. Eine Beziehung zwischen zwei Tabellen stellt ja mit dem Zusammenführen von zwei Relationen letztlich nur eine Vergrößerung der Anzahl an Elementen dar. Betrachtet man eine Beziehung als Relation, so stellen sich ihre Elemente als die Vereinigung der Elemente der beiden verknüpften Relationen dar.

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

Gäbe es in der Datenbanktabelle für jede mögliche Kombination von Attributwerten eine eigene Zeile, dann würde diese Tabelle das kartesische Produkt der Wertemengen für die Spalten darstellen. Normalerweise enthält eine Datenbanktabelle nur eine sehr kleine Teilmenge der möglichen Tupel, sie stellt also eine Untermenge dieses kartesischen Produkts dar.

Eine Konsequenz daraus, dass die Belegung einer Datenbanktabelle als Menge aufzufassen ist, ist die, dass die einzelnen Zeilen als Elemente dieser Menge anzusehen sind. Sie können somit entweder in der Menge (Tabelle) enthalten sein oder nicht - von Anzahl und Position eines Elementes kann man hingegen nicht sinnvoll sprechen. Mit der üblichen Datenbankabfragesprache SQL ist es zwar im Allgemeinen möglich, ein Element (d. h. eine Zeile mit einer bestimmten Wertebelegung) mehrfach in eine Tabelle einzufügen, ein solches Vorgehen ist aber sinnlos: Mehrere Zeilen, die mit denselben Werten belegt sind, haben dieselbe Identität und sind logisch voneinander nicht zu unterschieden.

Siehe auch

Literatur

  1. Date, C. J. (2003). Introduction to Database Systems. 8th edition, Addison-Wesley. ISBN 0-321-19784-4.

Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Löschweitergabe — Die referentielle Integrität – oft auch als RI abgekürzt – ist eine Form der Datenintegrität. Unter der referentiellen Integrität versteht man die Integrität auf Beziehungsebene. Neben der referentiellen Integrität unterscheidet man noch die… …   Deutsch Wikipedia

  • Löschweiterleitung — Die referentielle Integrität – oft auch als RI abgekürzt – ist eine Form der Datenintegrität. Unter der referentiellen Integrität versteht man die Integrität auf Beziehungsebene. Neben der referentiellen Integrität unterscheidet man noch die… …   Deutsch Wikipedia

  • Referenzielle Integrität — Die referentielle Integrität – oft auch als RI abgekürzt – ist eine Form der Datenintegrität. Unter der referentiellen Integrität versteht man die Integrität auf Beziehungsebene. Neben der referentiellen Integrität unterscheidet man noch die… …   Deutsch Wikipedia

  • Referenzintegrität — Die referentielle Integrität – oft auch als RI abgekürzt – ist eine Form der Datenintegrität. Unter der referentiellen Integrität versteht man die Integrität auf Beziehungsebene. Neben der referentiellen Integrität unterscheidet man noch die… …   Deutsch Wikipedia

  • RDBM — Eine relationale Datenbank dient zur elektronischen Datenverwaltung in Computersystemen und beruht auf dem relationalen Datenbankmodell. Dieses wurde 1970 von Edgar F. Codd erstmals vorgeschlagen und ist bis heute, trotz einiger Kritikpunkte, ein …   Deutsch Wikipedia

  • RDBMS — Eine relationale Datenbank dient zur elektronischen Datenverwaltung in Computersystemen und beruht auf dem relationalen Datenbankmodell. Dieses wurde 1970 von Edgar F. Codd erstmals vorgeschlagen und ist bis heute, trotz einiger Kritikpunkte, ein …   Deutsch Wikipedia

  • Relational Database Management System — Eine relationale Datenbank dient zur elektronischen Datenverwaltung in Computersystemen und beruht auf dem relationalen Datenbankmodell. Dieses wurde 1970 von Edgar F. Codd erstmals vorgeschlagen und ist bis heute, trotz einiger Kritikpunkte, ein …   Deutsch Wikipedia

  • Relational Database Management Systems — Eine relationale Datenbank dient zur elektronischen Datenverwaltung in Computersystemen und beruht auf dem relationalen Datenbankmodell. Dieses wurde 1970 von Edgar F. Codd erstmals vorgeschlagen und ist bis heute, trotz einiger Kritikpunkte, ein …   Deutsch Wikipedia

  • Relationales Datenbankmanagementsystem — Eine relationale Datenbank dient zur elektronischen Datenverwaltung in Computersystemen und beruht auf dem relationalen Datenbankmodell. Dieses wurde 1970 von Edgar F. Codd erstmals vorgeschlagen und ist bis heute, trotz einiger Kritikpunkte, ein …   Deutsch Wikipedia

  • Relationales Datenbankmodell — Eine relationale Datenbank dient zur elektronischen Datenverwaltung in Computersystemen und beruht auf dem relationalen Datenbankmodell. Dieses wurde 1970 von Edgar F. Codd erstmals vorgeschlagen und ist bis heute, trotz einiger Kritikpunkte, ein …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”