Verbetering database
Ik heb een database aangemaakt voor mijn voetbal wedstrijden (voetbalvereniging)
Nu heb ik het als volgt:
Leden
- id
- voornaam
- achternaam
- nog wat meer gegevens
- nog meer gegevens
- spelend
- speler (in welk team hij speelt)
- coach (welk team hij coacht, als hij dat doet...)
- goals (voor topscores)
Nu ben ik bezig met een aantal aanpassingen zodat ik alles voor volgend seizoen in kan vullen, maar ik zou graag mijn gegevens (bruikbaar) blijven bewaren in mijn database. Dus dacht ik om mijn tabel Leden op te gaan splitsen.
Zodat ik Speler/Coach/Goals aan een seizoen vast kan hangen.
Maar hoe doe ik dit het beste? Ik heb al zitten denken aan een tabel Team en dan alle spelers die spelend zijn daarin maar dan moet ik voor elk seizoen een kolom aanmaken (weet niet of dat het beste is?)
Graag jullie idee hierover.
Bedankt!
Tabel 1: SPELERS: speler_id, naam, rang (voetballer/coach)
Tabel 2: TEAMS: team_id, team_naam, voetbal_stadion_id
Tabel 3: KOPPEL_SPELER_AAN_TEAM: team_id, speler_id, datum
Tabel 4: WEDSTRIJDEN: team_id_thuis, team_id_uit, voetbalstadion_id
Tabel 5: STADIONS: voetbalstadion_id, plaats, naam, ....
Een coach stop je ook bij de spelers.
Door tabel 3 kan je ook de 'geschiedenis' zien en als een speler bij meerdere teams speelt kan je dat terugvinden.
Maar ga ook eens kijken hoe anderen dit doen. Je bent niet de eerste die een voetbalcompetitie in mysql opzetten.
Dit lijkt op wat ik bedoel, maar ik wil het dus per seizoen indelen.
Dan zou ik lekker old-skool voor HTML gaan zonder enige database.
Als ik weer thuis ben zal ik proberen het wat verder uit te leggen.
Ik heb zelf ook twee seizoenen een site gemaakt voor mijn team. Hierbij werd de stand berekend met de uitslagen en per wedstrijd ook mogelijk voor het bijhouden van wissels, doelpunten, assists, kaarten, scheidsrechter enz. Kan wel kijken of ik de database layout daar nog van heb ( en ben ook wel benieuwd naar aanvullende mogelijkheden)
Toevoeging op 04/06/2013 23:45:42:
Dit lijkt op wat ik bedoel, maar ik wil het dus per seizoen indelen.
PERSOON
persoon_id, persoon_naam, persoon_voorvoegsel, persoon_voornaam, persoon_geboortedatum, persoon_geboorteplaats, persoon_landid, persoon_overlijdensdatum
CLUB
club_id, club_plaatsid, club_datumoprichting
CLUBNAAM
clubnaam_id, clubnaam_clubid, clubnaam_naamtypeid, clubnaam_naam, clubnaam_begindatum, clubnaam_einddatum
TEAM
team_id, team_club, team_elftal
SELECTIE
selectie_id, selectie_seizoen, selectie_team, selectie_persoon, selectie_functie
FUNCTIE
functie_id, functie_omschrijving
SEIZOEN
seizoen_id, seizoen_omschrijving
COMPETITIE
competitie_id, competitie_omschrijving
COMPETITIESEIZOEN
competitieseizoen_id, competitieseizoen_seizoen, competitieseizoen_competitie
CLUBSTRAF
clubstraf_id, clubstraf_competitieseizoen, clubstraf_wedstrijd, clubstraf_team, clubstraf_minpunten, clubstraf_reden
WEDSTRIJD
wedstrijd_id, wedstrijd_soort, wedstrijd_seizoen, wedstrijd_ronde, wedstrijd_datum, wedstrijd_accommodatie, wedstrijd_thuisteam, wedstrijd_uitteam, wedstrijd_toeschouwers, wedstrijd_afgelast
WEDSTRIJDSOORT
wedstrijdsoort_id, wedstrijdsoort_omschrijving
SCORE
score_id, score_ scoretype_idt, score_wedstrijd, score_thuis, score_uit
SCORETYPE
scoretype_id, scoretype_omschrijving
GEBEURTENIS
gebeurtenis_id, gebeurtenis_wedstrijdid, gebeurtenis_gebeurtenistypeid, gebeurtenis_positieid, gebeurtenis_teamid, gebeurtenis_persoon1, gebeurtenis_persoon2, gebeurtenis_minuut, gebeurtenis_volgorde, gebeurtenis_scorethuis, gebeurtenis_scoreuit
GEBEURTENISTYPE
gebeurtenistype_id, gebeurtenistype_omschrijving
Op basis hiervan kun je de standen via SQL bepalen en ook de statistieken per speler/seizoen (Heb nog wel een versie vna mij team-site RKVVO 7 (zal bij jou wel een bekende club zijn) staan op rkvvo7.comuv.com (hierbij geen historisch seizoenoverzicht, maar zit er in principe wel in).