DB - Datenbanken


Das relationale Datenmodell
ERD
-
Handout

Das relationale Datenmodell

Grundbegriffe der Datenmodellierung

Bevor der Ansatz der relationalen Datenmodellierung erklärt wird, ist eine Klärung von Begriffen notwendig. Zu diesem Zweck stellen wir uns eine "manuelle" Datenbank von Lernenden mit Karteikarten vor. Auf einer leeren Karteikarte befinden sich bereits Beschriftungen und Felder, in welchen die variablen Informationen der Lernenden eingetragen werden können.

Alle Lernenden werden auf den Karteikarten mit den gleichen Eigenschaften wie Nummer, Name, Vorname etc. erfasst. Diese Eigenschaften werden als Attribute bezeichnet. Die Menge aller Lernenden heisst Entitätstyp und eine konkrete Ausprägung eines Lernenden (z.B. der Lernende "Hans Muster") wird als Entität bezeichnet. Eine Entität ist also ein individuelles und eindeutig identifizierbares Exemplar von Dingen, Personen, Begriffen aus der realen Welt oder auch aus der Vorstellungswelt.

Die Aussage, dass eine Entität ein eindeutig identifizierbares Objekt darstellt, führt dazu, dass es auch ein Attribut (oder eine Zusammenfassung mehrerer Attribute) gibt, mit dem die konkrete Entität tatsächlich identifiziert wird. Dieses Attribut wird als Identifikationsschlüssel bezeichnet. Im Beispiel des Entitätstyp Lernender könnte das typischerweise die Nummer des Lernenden sein.

Identifikationsschlüssel müssen folgende Kriterien erfüllen:

Eindeutigkeit Der Wert des Identifikationsschlüssels darf in einem Entitätstyp nur einmal vorkommen.
Lebensdauer Der Wert des Identifikationsschlüssels darf sich während der ganzen Lebensdauer einer Entität nicht verändern. Ein Lernender behält seine Nummer solange er im System erfasst ist. Wenn sich die Nummer ändern würde, ergäben sich Probleme mit den alten Einträgen und Akten, da diese nicht mehr zuordenbar wären, weil die alte Nummer nicht mehr existiert.
Sofortige Vergabe Der Identifikationsschlüssel muss sofort beim Entstehen einer Entität im System eingegeben oder automatisch vergeben werden. Es darf keinen Lernenden ohne Nummer geben, weil sonst eine Zuordnung von Einträgen oder Akten nicht möglich wäre.

Die Begriffe Entitätstyp, Entität, Attribut und Identifikationsschlüssel sind die Grundbegriffe der Datenmodellierung. Es handelt sich dabei um abstrakte, d.h. allgemein gültige Begriffe. Je nach dem, mit welchem Modell eine Datenbank dann realisiert wird, werden in der Praxis aber etliche Synonyme verwendet. Diese werden hier zum besseren Verständnis der folgenden Erklärungen des relationalen Datenmodells bereits aufgeführt:

Entitätstyp entity-type (oder kurz entity), Klasse, Entitätsklasse, Tabelle, Table
Entität entity, Objekt, Exemplar, Datensatz, Zeile, Tupel, Record
Attribut Eigenschaft, Feld, Spalte

Der realationale Ansatz

Im relationalen Modell werden die Entitätstypen als Tabellen abgebildet, deren Spalten die Attribute und deren Zeilen die einzelnen Entitäten oder Datensätze darstellen. Eine Tabelle besteht aus einer Menge von Datensätzen (Zeilen). Jeder Datensatz besteht aus den gleichen Attributen (Spalten, Felder). Die eindeutige Identifikation eines Datensatzes erfolgt über den Identifikationsschlüssel (eindeutig, sofort vergeben, unveränderbar), welcher auch als Primärschlüssel (Primary-Key) bezeichnet wird.

Um Daten möglichst redundanzfrei zu speichern, besteht ein Modell im Normalfall aus mehreren Entitätsmengen resp. Tabellen. Am Beispiel oben kann so verhindert werden, dass die Information bezüglich eines Lehrberufes bei Lernenden mit dem gleichen Lehrberuf in der Tabelle Lernende mehrfach und wiederholt gespeichert wird. Diese Tabellen existieren zunächst unabhängig voneinander.

Die effektive Zusammengehörigkeit resp. die Zuordnung der Daten zweier Tabellen wird im relationalen Ansatz mit Beziehungen (Relationen, relations) abgebildet. Dazu wird der Primärschlüssel einer Tabelle als zusätzliches Attribut in andere Tabellen übernommen. Diese werden dort als Fremdschlüssel (Foreign-Key) bezeichnet.

Die Lehrberufsnummer wird hier als Fremdschlüssel in die Tabelle der Lernenden aufge- nommen. Über diese Beziehung wird definiert, dass der Datensatz eines Lernenden mit einem Datensatz eines Lehrberufes verknüpft ist (Hans Muster wurde als Lehrberuf Informatiker zuge- teilt). Umgekehrt kann auch festgestellt werden, welche Lernenden einen bestimmten Lehrberuf ausüben (Hans Muster und Maria Keller sind InformatikerInnen).

Datenintegrität

ERD

Für die Angabe der Kardinalitäten werden in der Praxis verschiedene Notationen verwendet. Folgende Darstellungen sind neben weiteren gebräuchlich:

Die Grafik rechts zeigt die Notationen für die Kardinalität, wenn ein Auftrag entweder eine oder keine Zahlung zur Folge hat.


MIN = 0
MAX = 1


Die Grafik rechts zeigt die Notationen für die Kardinalität, wenn ein Auftrag immer genau einem Kunden zugeordnet werden kann.


MIN = 1
MAX = 1


Die Grafik rechts zeigt die Notationen für die Kardinalität, wenn ein Kunde zeitweise auch keinen Auftrag haben kann.


MIN = 0
MAX = n


Die Grafik rechts zeigt die Notationen für die Kardinalität, wenn ein Kunde immer mindestens einen Auftrag haben muss.


MIN = 1
MAX = n

Beispiele

Ein Kunde macht keine, eine oder mehrere Bestellungen.
Eine Bestellung kann genau einem Kunde zugeordnet werden.

Eine Bestellung beinhaltet keines, eins oder mehrere Bestelldetails.
Ein Bestelldetail gehört genau zu einer Bestellung.

Ein Bestelldetail beinhaltet einen Artikel.
Ein Artikel kann in keinem, einem oder mehreren Bestelldetail vorkommen.

Ein Lieferant kann keinen, einen oder mehrere Artikel liefern.
Der Lieferant eines Artikels ist eindeutig.

Ein Artikel gehört genau zu einer Kategorie.
Eine Kategorie kann keinem, einem oder mehrere Artikel enthalten.

Ein Mitarbeiter kann keine, eine oder mehrere Bestellungen aufnehmen.
Die Bestellung wird durch genau einen Mitarbeiter aufgenommen.

Eine Bestellung kann über genau eine Versandfirma spediert werden.
Eine Versandfirma kann keinen, einen oder mehrere Bestellungen spedieren.

Handout

Handout-DB

© 2022 Loris Sprecher