Hier wird zunächst ein weiteres Beispiel für eine Datenbank entwickelt, danach folgt die Theorie.
Schul-Datenbank
Wir wollen hier eine Datenbank für eine Schule entwickeln (modellieren). (Vorläufiges) Ziel: Wir wollen abfragen, wer von wem in welchem Fach unterrichtet wird. Zur Vereinfachung stellen wir uns eine Schule vor, in der nach Klassen unterrichtet wird - ohne Kurse oder geteilte Klassen. Beteiligte: Schülerinnen und Schüler, Lehrerinnen und Lehrer sowie Klassen. Welche Eigenschaften werden benötigt?
|
Sind das die richtigen (wichtigen?) Eigenschaften? Darüber kann man oft bei der Entwicklung von Datenbanken diskutieren. Entscheiden muss man anhand des Zwecks, den man mit der Datenbank verfolgt. Nach dem oben genannten Ziel ist die Angabe des Geburtsdatums sowie des Klassenraums nicht nötig. Sollen wir sie noch weglassen?
Beziehungen
Schülerinnen und Schüler gehören zu Klassen, jeder Schüler zu genau einer Klasse; Klassen bestehen aus mehreren Schülerinnen und Schülern.Also liegt eine 1:n - Beziehung vor.
Um diese Beziehung einzubauen, müssen wir bei jedem Schüler-Datensatz eine weitere Eigenschaft (Klasse) angeben.
Klassen haben mehrere Lehrerinnen und Lehrer, diese wiederum unterrichten in mehreren Klassen: eine m:n - Beziehung!
Diese Beziehung können wir - wie bei der Schulbücherei schon erläutert - nicht einfach durch anhängen einer weiteren Spalte an eine der Tabellen umsetzen.
Wir müssen eine weitere Tabelle erstellen, in der gespeichert wird, welcher Lehrer welche Klasse in welchem Fach unterrichtet.
Beantworte folgende Fragen: (Antworten aus Anfangszustand, Endzustand, Eingabesymbol, Uebergang, Folgezustand)
Wer ist der Mathematiklehrer von Konstantin?:
Wie heisst die Religionslehrerin der 6a?:
Welche Faecher unterrichtet Herr Veller in der 7a?: