Fremdschlüssel

superheld

Grünschnabel
Hallo zusammen

Ich plane ein Ranglistenprogramm zu schreiben, welches mittels einer MySQL-Datenbank die Ergebnisse speichert.
Nun habe ich eine Tabelle mit den Teilnehmerdetails und eine mit den Ergebnissen je Teilnehmer.
Nun haben beide davon eine ID-Spalte, in welcher eine Teilnehmer-Nummer steht. In der Teilnehmer-Tabelle wir die ID automatisch erhöht. In der Ergebnis-Tabelle soll die jeweils gleiche ID die zum Teilnehmer passenden Ergebnisse enthalten.
Sehe ich das richtig, dass ich mittels FOREIGN KEY diese Spalte in der Tabelle Ergebnis passed zur ID-Spalte aus der Tabelle Teilnehmer "synchronisieren" kann?
Es soll also wenn ich einen neuen Eintrag in Teilnehmer mache, soll automatisch diese automatich erstellte ID-Nr in die andere Tabelle übernommen werden.

Ich habe schon die entsprechende Spalte mittels FOREIGN KEY verknüpft miteinander, aber beim Einfügen in die eine ändert sich an der aderen nichts. Habe ich den Sinn der Fremdschlüssel nicht verstanden, oder habe ich etwas falsch gemahct?
Als Tabellentyp habe ich InnoDB verwendet, sollte also Fremdschlüssel unterstützen.

gruss dave & danke für eure hilfe
 
Du hast recht, es handelt sich um einen Foreign-Key.
Das heisst aber nicht, dass Einträge automatisch gemacht werden. Es wird so lediglich überwacht, dass du einerseits keine Einträge in die zweite Tabelle machen kannst mit einem Foreign-Key, der in der ersten Tabelle gar nicht vorhanden ist und umgekehrt, dass du in der ersten Tabelle keine Zeile löschen kannst, die in der zweiten Tabelle referenziert ist.
Es wird also nur überwacht, nicht eingefüllt...

Grüsse, Tecla
 
Zurück