SQL Tabelle für Noten von Fächern?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ich würde nicht alle Daten in einer Tabelle speichern. Dafür verwendet man eine Abfrage. Du hättest demnach folgende Tabellen:

Lehrer, Schüler, Fächer, Noten

Nun zu den Beziehungen:

Ein Lehrer kann 1 bis n Schüler haben
Ein Lehrer kann 1 bis n Fächer unterrichten

Ein Schüler kann 1 bis n Fächer haben

Ein Schüler kann 0 bis n Noten/Fach bekommen

Die Noten-Tabelle hat eine m:n-Beziehung:

Eine zum Fach und eine zum Schüler, wobei Fach eine Beziehung zum Lehrer hat.

toakz 
Fragesteller
 31.08.2017, 09:45

Ich danke dir geliebter Ehrenbruder

0
Brainchild  31.08.2017, 10:02
@toakz

Bitte. Ich habe mir nun die Mühe gemacht und sende dir eine verbesserte Version als Beziehungsdiagramm in einer zusätzlichen Antwort.

0

Hallo!
Gute Arbeit!
In der Tabelle Noten fehlt jedoch ein Notenfeld, zum Eintragen der Note. Die Id's würde ich eher ID_[TABELLENNAME] nennen, aber das ist Geschmackssache.
LG
Norman

Kann man schon, aber nicht auf eine saubere Art und Weise, da ja nicht bekannt ist, wie viele Noten anfallen. Da wäre eine zweite Tabelle für die Noten über eine 1:n-Verknüpfung die sauberere Lösung.

Die "unsaubere" Lösung wäre es zu schätzen, wie viele Noten pro Fach anfallen und dann entsprechend viele Tabellenspalten zu definieren plus ein paar Reservespalten. Aber wie gesagt - da kräuseln sich eigentlich die Fußnägel vor Entsetzen.

Grobentwurf:

Tabelle faecher
id
name
lehrer
kommentar

Tabelle noten
id
fach_id       -----> faecher.id
datum
note
kommentar