Jestem w trakcie projektowania bazy danych. Jednymi z danych jakie będą w niej gromadzone to opinie użytkowników. Każda opinia będzie się składała z treści, oceny ogólnej i ocen cząstkowych. Otóż nie jestem pewien jak dokładnie składować oceny cząstkowe.
Na początku wyszedłem z założenia, że "definicje" ocen cząstkowych będą przetrzymywane w tabeli Parametry. Każda definicja to id oraz nazwa oceny cząstkowej. Z tej też tabeli byłyby one pobierane i wyświetlany byłby dla nich formularz na stronie www.
Po przesłaniu formularza dane miałby być zapisywane w taki sposób, że do tabeli Opinie wędrowała by treść opinii, ocena ogólna i id użytkownika, a oceny cząstkowe zostały by włożone do tabeli OpiniaParametry (na ERD jest mały błąd, drugie pole ID, które nie jest kluczem głównym powinno się nazywać value). Każdy wpis zawierał by id opinii, id parametru (definicji oceny cząstkowej) oraz wartość odpowiedzi użytkownika (liczby całkowite od 1 do 6). Czyli jeśli np. zdefiniowanych zostałoby 10 ocen cząstkowych to dla jednej opinii w tabeli Opinie, istniałoby 10 wpisów w tabeli OpiniaParametry.
Poniżej przykładowy ERD:

Jednak jak przeanalizowałem to jeszcze raz to ten pomysł wydaje mi się nietrafiony.
Otóż, ocen cząstkowych nie będzie więcej jak 10.
Dlatego też moje pytanie brzmi, czy warto w takim razie rozbijać to aż na 3 tabele?? Zamiast tego zrobić to wszystko na jednej tabeli. Poniżej przykładowe ERD.
