# Datenbankstruktur für eine renn simulation



## Racernr1 (11. Jun 2008)

Hallo 
ich möchte eine rennsimulation mit java erstellen.

ich habe nur leider keine/kaum erfahrung mit datenbanken. Das mit dem foreign key ist mir nioch nicht ganz klar geworden, deshalb bitte korrigieren wenn es unten falsch aufgeschrieben ist (eine Erklärung wäre nett)

Deshalb hier mal die grundsätzliche frage ob ihr die tabellen auch so erstellen würdet (MYSQL):

Tabelle Fahrer
id int autoincr. primarykey
team_id int  foreignkey  //beinhaltet das team für dne der fahrer fährt
name varchar
punkte int
anzahlrank1 int
anzahlrank2 int
anzahlrank3 .....


Tabelle Team
id int autoincr primarykey
fahrer_id int foreignkey // beinhaltet die id's der fahrer, welche das team unter vetrag hat
name varchar
punkte int

Tabelle Rennorte
id autoincr primarykey
ort varchar


soweit bin ich grundsätzlich besonders schwer fällt mir jetzt die struckturierung, wie ich ein rennen abspeichern soll...

da hat jeder fahrer zu dem rennen eine platzierung und eine qualifying zeit + erfahrene punkte.


Mein Ansatz

Renndetails
id int autoincrement primarykey
rennorte_id int forgeinkey
fahrer_id int// diese fahrer sind mitgefahren (array?)



Ich bedanke mich für Euer interesse!


----------



## SlaterB (11. Jun 2008)

wenn ein Team mehrere Fahrer hat, dann kannst du die nicht alle in einem int-Feld speichern,
die Information ist ja eh schon beim Fahrer abgelegt, doppelte Speicherungen sind selten empfehlenswert


von den Renndetails brauchst du für mehrere Fahrer eben mehrere Einträge,
das ist ok


----------



## racernr1 (11. Jun 2008)

SlaterB hat gesagt.:
			
		

> wenn ein Team mehrere Fahrer hat, dann kannst du die nicht alle in einem int-Feld speichern,
> die Information ist ja eh schon beim Fahrer abgelegt, doppelte Speicherungen sind selten empfehlenswert
> 
> 
> ...



hmm das verstehe ich jetzt nicht ganz ... wie sieht dnen dann die tabelle aus?
kannst du das mal grob aufschrieben wie ich es getan habe

danke für deinen post


----------



## SlaterB (11. Jun 2008)

beim Team einfach Fahrer streichen,

die RennergebnisTabelle enthält dann:
Rennen, Fahrer, Platz, Zeit
1, Norbert, 1, 4:00
1, Gustav, 2, 4:20
...


----------

