Felix Riesterer: DB-Struktur

Beitrag lesen

Lieber Saphir,

Folgende Relation würden isch ergeben:

Schüler(Schueler_ID, Vorname, Nachname, Kurs_ID#)
Kurs(Kurs_ID, Kursbezeichnung)

das finde ich nicht gut. In meinen Augen sollte die Verknüpfung aus Schüler-Namen und Kurs-ID nicht in derselben Tabelle stehen. Ich würde das eher so lösen:

Schüler(Schueler_ID, Vorname, Nachname)
Kurs(Kurs_ID, Kursbezeichnung)
gebucht(Schueler_ID, Kurs_ID)

In einer Tabelle sollten nach meiner Auffassung nur die unmittelbaren Eigenschaften eines "Gegenstands" stehen.

In der Schülertabelle sind das die Eigenschaften eines Schülers wie Vor- und Nachname. Dort könnten von mir aus auch noch weitere Schülerdaten stehen, die einen Schüler näher definieren: Telefon-Nummer, Email-Adresse, Geburtsdatum, Anschrift etc.

In der Kursetabelle sollten nur die Dinge stehen, die einen Kurs näher beschreiben. Neben der Kursbezeichnung könnte dort auch stehen, was er kostet, wann er stattfindet und wo.

Die Verknüpfung von Schülerdaten und Kursdaten sollte nach meiner Auffassung in einer eigenen Tabelle in Form einer m:n-Relation stehen. Dadurch könnte ein Schüler auch mehrere Kurse belegen, was in Deinem Entwurf z.B. nicht abgebildet werden kann.

Liebe Grüße,

Felix Riesterer.

--
ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)