![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 168 Pomógł: 1 Dołączył: 19.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Zastanawiałem się czy umieścić ten wątek w dziale PHP czy też MySQL ale chyba ten pierwszy będzie odpowiedniejszy. Chodzi mi o wskazówki jaki rodzaj tabeli będzie odpowiedniejszy do moich zastosowań. Mam tabelę z wynikami zawodów. Powiedzmy, że nazywa się 'wyniki'. Składa się z kolumn id(autoincrement),osoba(z tabeli osoby),nrzawodow(z tabeli zawody). Potem mam pola z wynikami dla poszczególnych konkurencji np. strzelanie(ilość pkt), bieg(ilość pkt). Teraz moje wątpliwości sprowadzają się do tego, że każde dodanie nowej konkurencji wiąże się z modyfikacją struktury tabeli z wynikami i dodaniem odpowiedniej kolumny. Czy nie lepiej byłoby zrobić oddzielną tabelę 'kokurencje' (idkonkurencji,nazwa), gdzie trzymać ich nazwy a w tabelę z wynikami przerobić na strukturę (id,osoba,nrzawodow,idkonkurencji,wynik)? Wiem, że w przypadku gdy osoba na jednych zawodach startowałaby w wielu konkurencjach to miałbym kilka rekordów w bazie danych zamiast jednego ale z drugiej stron przy 20 konkurencjach nie miałbym przy każdej osobie, która startowała np. tylko w jednej konkurencji na danych zawodów praktycznie całego wiersza pustych wpisów. No i dodawanie kolejnych konkurencji byłoby łatwiejsze. Co o tym sądzicie? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 168 Pomógł: 1 Dołączył: 19.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
OK, napiszę to trochę inaczej. Mam bazę harcerzy. Są dane harcerzy w jednej tabeli. W drugiej mamy obozy harcerskie.
Teraz tabela wygląda tak: ranking harcerzy: id,harcerz,oboz,pozycja(pod względem ilości zdobytych sprawności na obozie),ocena z obozu,zdobytasprawnosc1,zdobytasprawnosc2,zdobytasprawnosc3,itd. pola harcerz i oboz to odpowiednio id z innej tabeli, gdzie są harcerze i obozy. Pozycja jest wyliczona na podstawie roznych danych (w ramach jednego obozu),ocena to ocena za obóz (od 1 do 6), zdobytasprawnosc1(...)x to odpowiednio zdobyte sprawnosci (albo tak albo nie - wartosci 0 lub 1). Czy rozbijać taką tabelę na trzy tabele: 1. rankingharcerzy (id,harcerz,oboz,pozycja,ocena) 2. rankingsprawnosci (id,harcerz,oboz,idsprawnosci,iloscpunktowzanią) 3. listasprawnosci (id,nazwa,punkty). Czy też nie ma to sensu i jest to za duzo roboty? W chwili obecnej jeśli chcę dodać sprawność to muszę modyfikować tabelę ranking harcerzy i dodawać nową kolumnę. Ten post edytował MalyKazio 3.09.2008, 18:36:10 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 23:20 |