A VisualFoxpro adatbázisfejlesztő rendszer
  • PetruZ
    #23
    Hát, én mondjuk elsőre azt csinálnám, hogy az eredménytáblába elhelyeznék egy egyedi kulcsot (mondjuk egy folytonosan növekvő szám is jó; unique key index, ha így ismerősebb). A statisztika táblának ez idegen kulcsa (foreign key) lenne, az eredmény - statisztika között 1:N kapcsolattal. A statisztika táblán ez a mérkőzésazonosító plusz a játékos azonosító szintén külön egyedi kulcsot alkotna.
    Így az egyediséget minden esetben le lehet fedni, az adatok összekapcsolása pedig a mérközésazonosító alapján egyértelmű (egy mérkőzéshez több stat sor tartozhat, de mindegyiknek csak egy játékos sora lehet a második unique key miatt). A korlátokról maga az adatbázis gondoskodik a két unique megszorítás miatt.

    Pl. (csak nagyon vázlatosan, a konkrét táblastruktúra ismeretében tovább finomítható, csiszolható):
    -egy játékos adatai egy adott mérkőzésen: select a.*, b.* from merkozes a, stat b where a.merkozes_id = b.merkozes_id and b.jatekos_id = XXX and a.merkozes_id = YYY;
    -egy játékos mely mérkőzéseken játszott: select a.* from merkozes a, stat b where a.merkozes_id = b.merkozes_id and b.jatekos_id = XXX;
    És így tovább. A lényeg a két tábla összekapcsolása a merkozes_id alapján, a többi már gyerekjáték.