SQL wie macht man das?

Kingkook

Aktives Mitglied
Liebe Com,

meine letzten SQL-Tage sind viele viele Monde her, aber jetzt brauch ich es wieder komm aber sorichtig nicht klar.

Momentan habe ich eine Tabelle mit 3 Felder:
KursID,Kursteilnehmer,bereits teilgenommen.

dabei gilt:
Es gibt beliebig viele Kurse mit verschiedenen ID's.
In jedem Kurs sind beliebig viele Teilnehmer ( diese haben entweder schon mal teilgenommen oder nicht)
Jeder Teilnehmer kann an beliebig vielen verschiedenen Kursen teilnehmen.

momentan schreibe ich alles in eine Tabelle ohne Schlüssel, aber wiederholen sich bei mir Datensätze mehrfach.Wie kann ich diese DB am besten gestalten?

Gruß Kooki
 

Peingebreck

Mitglied
Splitte das ganze aus normalformtechnischen Gründen auf in 2 Tabellen. Kurs und Teilnehmer. PK für Kurs ist schon als ID gegeben, Teilnehmer braucht noch einen, da Namen ja auch doppelt vorkommen können sowie die jweilige KursID als FK (wenn derjenige am Kurs teilnimmt).Das Attribut "teilgenommen" entfällt dann logischerweise.

Greetz :)
 
Zuletzt bearbeitet:
C

Camino

Gast
Sinnvoller wären wohl eher 3 Tabellen:

1.) Kurse
2.) Kursteilnehmer
3.) Kursteilnahmen

In allen 3 hast du eine ID als Primärschlüssel. In der 1. alle Kurse, in der 2. alle Personen und in der 3. welche Person an welchem Kurs teilnimmt (also die Fremdschlüssel aus 1. und 2.).
 

Ähnliche Java Themen

Neue Themen


Oben