jg10:modellierung10einstieg:aufgabe1loesung:start
Lösung zu Aufgabe 1
In einem Theater soll eine Datenbank eingeführt werden, in der die Theaterstücke, die Schauspieler/innen und die Aufführungen (welcher Saal?, wann?) verwaltet werden.
- a) Erstelle das Klassendiagramm mit Relationen (noch ohne Attribute) und darauf aufbauend das relationale Modell (insgesamt mindestens 6 Attribute)!
- b) Wie könnte das Modell erweitert werden, damit nicht nur gespeichert werden kann, welche Schauspieler in welchen Stücken mitspielen, sondern auch, welche Rolle sie jeweils haben?
a) Klassendiagramm und relationales Modell
Relationales Modell:
- Schauspielerin [id: integer, rufname: varchar(80), familienname: varchar(80)]
- Theaterstück [id: integer, titel: varchar(200), autor: varchar(100)]
- spielt_in [schauspielerin_id: integer, theaterstück_id: integer]
- Aufführung [id: integer, zeitpunkt: datetime, theaterstück_id: integer, saal_id: integer]
- Saal[id: integer, name: varchar(100), kapazität: integer]
Wir sehen hier erstmals den Fall, dass eine n:m-Relation ein zusätzliches Attribut hat (hier: die Rolle). Man bildet es ab, indem man die Beziehungstabelle um eine entsprechende Fremdschlüsselspalte erweitert. Zur Veranschaulichung nachfolgend die vier beteiligten Tabellen mit ein paar Beispieldatensätzen:
jg10/modellierung10einstieg/aufgabe1loesung/start.txt · Zuletzt geändert: 2023/10/19 09:41 von Martin Pabst