Citat:
Ursprungligen postat av KXXO
Hej,
Jag har ett projekt där användare får poäng i olika kategorier. Från början tänkte jag ha en poängkolumn för varje kategori i användartabellen men börjar tänka att det kanske är fult och funderar istället på att skapa en ny relaterad tabell där det endast finns användar-ID, kategori-ID och poäng. Det rör sig om ungefär 10 kategorier som dock kan komma utökas.
Är det bästa lösningen eller finns det något annat? Det känns som sagt fult att ha så många liknande kolumner i användartabellen även om det såklart är enklaste lösningen.
Jag kör PHP om det är relevant.
Språket är irrelevant här. Vad som däremot ÄR relevant är att det ur modelleringssynpunkt är helt kefft att använda olika kolumner för olika kategorier i användartabellen. Det är en design som utan problem kommer ställa till problem för dej den dagen du vill stoppa i fler kategorier. En databasdesign som gör at dina tabeller tvingas växa "sidledes" (dvs med fler attribut) är inte speciellt snyggt, dessutom kommer det bli onödigt krångliga frågor sedan när du ska hålla på och summera och gruppera etc.
Din andra ide var här betydligt bättre, inte nog med att dina frågor kommer förenklas avsevärt med den designen, du kan närsomhelst, utan att behöva designa om tabellen, stoppa i ytterligare kategorier utan problem.
Din andra lösning är den som är mest framtidssäker minst sagt. Kör på den så undviker du en massa problem längre fram, det kan jag lova dej.