Wie normalisieren -- 1 Table oder 4?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wie normalisieren -- 1 Table oder 4?

    Hallo,

    ich habe ein kleines logisches Problem.
    folgendes will ich anlegen:

    Für ein Notenverwaltungssystem für Lehrer soll man mehrere Klassen (also Schulklassen!) anlegen können.
    Jede Klasse hat natürlich mehrere Schüler, jeder Schüler mehrere Fächer und jedes Fach mehrere Noten.


    -Klasse 5a
    -- Jan
    ----- Mathe
    ---------- KA 1
    ---------- KA 2
    ---------- Test 1
    ---------- Test 2
    ----- Deutsch
    ---------- KA 1
    ---------- KA 2

    -- Helmut
    ----- Mathe
    ----- Deutsch
    ---------- KA 1
    ---------- KA 2
    -----------..

    --Sophie
    -----...

    -Klasse 5b
    -- Erwin
    --...

    und so weiter.

    Der Benutzer soll später Klassen, Fächer, Schüler und Noten anlegen können.
    Wenn das gut klappt, können später auch mehrere Lehrer angelegt werden (=mehrere Logins)

    Wie lege ich jetzt am praktischsten die Tabellen an?

    Eine Table für die Klassen und Namen und eine weitere für die Noten und Fächer?
    Oder besser für die Fächer extra eine Table?

    Danke schonmal!

  • #2
    Tabelle Klassen
    id - klasse
    Primary auf id

    Tabelle Fächer
    id - klassen_id - fach
    Primary auf id
    Index auf klassen_id

    Tabelle Schüler
    id - klassen_id - schuelerdaten->
    Primary auf id
    Index auf klassen_id

    Tabelle Noten
    id - schueler_id - klassen_id - note
    Primary auf id
    index auf schueler_id und klassen_id


    So würde ich es machen ...
    [FONT="Helvetica"]twitter.com/unset[/FONT]

    Shitstorm Podcast – Wöchentliches Auskotzen

    Kommentar


    • #3
      Hm, okay, Du schlägst also 4 Tabellen dafür vor.
      Ich nehme mal an, daß Du mehr Erfahrung hast als ich und das somit die praktikabelste Methode ist!

      Danke schön!

      Kommentar


      • #4
        noch n kleiner Hinweis, bei folgender Tabelle

        Tabelle Noten
        id - schueler_id - klassen_id - note
        Primary auf id
        index auf schueler_id und klassen_id

        kann man die klassen_id ohne Probleme weglassen, da man ja auf schueler_id geht, und da die Klasse automatisch dabei hat

        Kommentar


        • #5
          Stimmt. Aber sollte eigentlich auch fach_id sein
          [FONT="Helvetica"]twitter.com/unset[/FONT]

          Shitstorm Podcast – Wöchentliches Auskotzen

          Kommentar


          • #6
            Und die ID in der Tabelle Klassen dann auf auto increment, oder?
            (Weil die ja zuerst angelegt wird)

            EDIT:
            Ach nee, sorry, überall natürlich, die anderen sind ja extra nochmal drin!

            Kommentar

            Lädt...
            X