faecher:informatik:oberstufe:datenbanken:er_modelle_praxis:start

Das ER-Modell in der Praxis: Verknüpfte Tabellen

In einer Datenbank muss jeder Datensatz eindeutig identifizierbar sein. Ein Kombination von Attributen, anhand dessen man einen Datensatz eindeutig finden kann, wird in der Datenbanksprache Primärschlüssel oder "minimaler Schlüssel" genannt. Eine Tabelle darf nie zwei oder mehr Datensätze enthalten, die den gleichen Primärschlüssel haben.

Wenn man ein oder mehrere Attribute als Primärschlüssel definiert, gibt das Datenbanksystem einen Fehler zurück, sobald man versucht, einen Datensatz einzufügen oder zu verändern, so dass die Eindeutigkeit verletzt würde.

In einer Datenbank bietet es sich häufig an, eine fortlaufende Nummer zu vergeben, die nur innerhalb der Datenbank eine Bedeutung hat (künstlicher Schlüssel oder Surrogatschlüssel). Die Option "auto_increment" sorgt dafür, dass ein neu hinzugefügter Datensatz automatisch die nächste mögliche Nummer bekommt, wenn man keinen Wert für den Primärschlüssel einträgt.

Um eine 1:N-Beziehung zwischen zwei Tabellen in einer Datenbank zu modellieren, wird die Tabelle auf der "N-Seite" der Beziehung (in unserem Beispiel die Schüler) um eine Spalte erweitert, in die man den Primärschlüssel des Objekts einträgt, zu dem die Beziehung besteht (im Beispiel die Nummer des Klassenlehrers). Wenn der Primärschlüssel einer Tabelle in einer anderen Tabelle verwendet wird, so ist dies ein sogenannter Fremdschlüssel. Es ist natürlich einfacher, wenn man die Beziehung auf der Seite speichert, wo mehrere Entitäten möglich sind. Jeder Schüler muss sich nur eine Information merken, was einfacher zu verwalten ist, als wenn jeder Lehrer sich alle seine Schüler merken müsste.


(A1)

Gegeben ist die folgende Schuldatenbank Datenbank mit zwei Tabellen (schueler/lehrer):

schueler
SNummer SNachname SVorname SGeburtsdatum SGeschlecht SKlasse SEmail KLNummer
1 Fischer Fritz 06.04.1993 m 7a fritzle@gmx.de 1
2 Müller Martina 01.12.1997 w 6c muellerma@web.de 2
3 Wahnsinn Heller 05.12.1994 w 9b hellwa@hotmail.com 3
4 Meyer Lischen 05.12.1992 w 10a meli@hotmail.com 4
5 Maier Lieschen 05.12.1991 w 10a melie@hotmail.com 4
lehrer
LNummer LNachname LVorname LGeburtsdatum LGeschlecht LEmail
1 Lämpel Fritz 06.04.1965 m llaempel@gmx.de
2 Gauss Carl 01.12.1954 m cfgauss@web.de
3 Fermat Hanni 05.12.1972 w hfermat@hotmail.com
4 Feinmann Marie 05.12.1969 w mfein@hotmail.com
  • Skizziere ein ER-Diagramm der Datenbank
  • Ordne den Schülern ihre Klassenlehrer zu. Wie gehst du dabei vor? – erkläre!
  • Welche Attribute sind in diesem Beispiel Primär– und Fremdschlüssel?
  • Warum eignet sich das Attribut "LNachname" nicht als Primärschlüssel?
  • Worauf ist zu achten, wenn ein neuer Lehrer angelegt wird?
  • Herr Gauss geht in Pension und wird aus der Datenbank gelöscht, im darauffolgenden Jahr wird Herr Newton eingestellt. Wie sollte sich das DBMS bezüglich der Lehrernummer 2, die Herr Gauss innehatte verhalten? Begründe deine Antwort.
  • Könnte man die Datenbank durch Schaffung einer weiteren Entität weiter "modularisieren"? Wenn ja, welche Entität käme in Frage? Wie würden sich die Attribute und Werte der Tabelle schueler dadurch verändern? Welchen Vorteil könnte es haben, diese Information in eine weitere Tabelle auszulagern?

Lösungen


(A2)

Markiere in folgender Übersicht der Datenbank webshop die minimalen Schlüssel und Fremdschlüssel. Minimale Schlüssel werden unterstrichen, Fremdschlüssel gestrichelt unterstrichen.

Importiere die Datenbank webshop in deinen mysql-Datenbankbereich.

FilenameFilesizeLast modified
lsg_a1_erdiagramm.png76.1 KiB24.11.2020 06:57
lsg_a1_klassen.png15.3 KiB24.11.2020 07:12
lsg_a1_verkn.png20.7 KiB24.11.2020 07:01
primaer_fremdschluessel_01.odp91.6 KiB20.11.2019 19:41
primaer_fremdschluessel_01.pdf95.3 KiB20.11.2019 19:41
webshop.zip2.1 KiB20.11.2019 20:06
webshop_er.png84.6 KiB06.11.2024 08:52
  • faecher/informatik/oberstufe/datenbanken/er_modelle_praxis/start.txt
  • Zuletzt geändert: 12.11.2024 07:49
  • von Marco Kuemmel