Relationales Modell: Struktur, Merkmale und Abfragesprachen

Eingeordnet in Informatik

Geschrieben am in Deutsch mit einer Größe von 4,73 KB

Relationales Modell: Grundlagen und Konzepte

Das relationale Modell ermöglicht es Benutzern, Informationen aus der Datenbank ohne die Unterstützung von Datenbank-Management-Experten zu erhalten. Die Daten werden so gespeichert, dass sie für Anwender leichter verständlich sind. Im relationalen Modell werden Daten in Tabellen (Relationen) gespeichert, und die Beziehungen zwischen den Zeilen (Tupeln) und Tabellen sind explizit sichtbar.

Merkmale relationaler Modelle

  • Es ist wichtig zu wissen, dass die Einträge in der Tabelle atomar sind.
  • Alle Einträge in einer Spalte sind vom gleichen Typ. Die Spalten werden als Attribute bezeichnet.
  • Keine zwei Zeilen (Tupel) in der Tabelle sind identisch, was die Eindeutigkeit der Datensätze gewährleistet.

Struktur relationaler Datenbanken

Auf der konzeptionellen Ebene wird das relationale Datenbankmodell durch eine Reihe von gespeicherten Relationen (Tabellen) repräsentiert.

Konzeptionelle Ebene: Relationales Datenbankmodell

Das relationale Datenbankmodell auf der konzeptionellen Ebene wird durch eine Menge von gespeicherten Relationen (Tabellen) dargestellt.

Externe Daten-Schemas (Submodelle)

Relationale Submodelle beschreiben externe Daten-Schemas, die jeweils aus einem oder mehreren Szenarien (Sichten) bestehen, welche die für eine bestimmte Anwendung erforderlichen Daten darstellen.

Physische Speicherung (Implementierung)

Auf der internen Ebene wird jede Basistabelle als Datei gespeichert und implementiert.

Datenbanksprache

Eine Datenbanksprache ist ein wesentliches Werkzeug für das Datenmanagement in relationalen Systemen.

Formale Abfragesprachen

Formale Abfragesprachen sind entscheidend für die Interaktion mit relationalen Datenbanken und lassen sich in prozedurale und nicht-prozedurale Typen unterteilen.

Prozedurale Sprachen

In prozeduralen Sprachen gibt der Benutzer Anweisungen, um das System anzuweisen, eine Reihe von Operationen in der Datenbank durchzuführen, um das gewünschte Ergebnis zu berechnen.

Nicht-prozedurale Sprachen

In nicht-prozeduralen Sprachen beschreibt der Benutzer die gewünschten Informationen, ohne ein spezifisches Verfahren für den Abruf dieser Informationen anzugeben.

Grundoperationen der Relationalen Algebra

Operationen wie Selektion, Projektion und Umbenennung werden als unäre Operationen bezeichnet, da sie auf einer einzelnen Relation (Tabelle) operieren. Die übrigen Operationen arbeiten auf Paaren von Relationen und werden daher als binäre Operationen bezeichnet.

Die Selektionsoperation (SELECT)

Diese Operation wählt Tupel (Zeilen) aus, die eine angegebene Bedingung in der Tabelle erfüllen. Sie wird oft durch das Sigma-Symbol (σ) dargestellt.

σ(Tabellenname WHERE Bedingung);

Die Bedingung nach der WHERE-Klausel kann Vergleichsoperatoren wie =, <, >, >=, <= oder <> (ungleich) enthalten.

Die Projektionsoperation (PROJECT)

Diese Operation besteht darin, die Spalten (Attribute) zu bestimmen, an denen wir interessiert sind. Sie wird durch das Pi-Symbol (π) dargestellt.

π[Attributliste](Tabellenname);

Wenn die Attributliste weggelassen wird, bedeutet dies, dass alle Spalten der betreffenden Tabelle ausgewählt werden sollen. Diese Operation kann auch auf das Ergebnis einer Selektion angewendet werden, z.B.:

π[Attributliste](σ(Tabellenname WHERE Bedingung));

Die Operation des kartesischen Produkts (CARTESIAN PRODUCT)

Diese binäre Operation dient dazu, alle Tupel zweier Tabellen miteinander zu kombinieren, was zu einer neuen Tabelle führt, die alle Spalten beider Ausgangstabellen enthält. Sie wird oft mit dem Symbol × oder dem Befehl TIMES angegeben.

Tabellenname1 TIMES Tabellenname2;

Die Join-Operation (JOIN)

Die Join-Operation kombiniert Zeilen aus zwei oder mehr Tabellen basierend auf einer gemeinsamen Bedingung. Das Ergebnis ist eine neue Tabelle, deren Tupel (Zeilen) die angegebene Bedingung erfüllen. Sie wird durch das Symbol ⋈ oder den Befehl JOIN dargestellt.

Tabellenname1 JOIN Tabellenname2 ON Tabellenname1.Attribut = Tabellenname2.Attribut;

Eine vereinfachte Form, der natürliche Join, kombiniert Tabellen automatisch über gleichnamige Attribute:

Tabellenname1 JOIN Tabellenname2;

Verwandte Einträge: