Czy baza danych jest poprawnie zaprojektowana ?

0

Czy możecie ocenić czy baza danych jest poprawnie zaprojektowana ? Na pierwszym zdjęciu nie jest pewien co do relacji, między tabelami, czy są poprawnie zrobione. Na drugim zdjęciu natomiast mam wątpliwości czy tabele user_data i user_statistics nie powinny być w tabeli user.
eer3.PNG
eer2.PNG

1

Szybciej by było jakbyś napisał co czego to ma służyć. Oczywiście można się domyślić po strukturze ale zdanie wyjaśnienia by na pewno nie zaszkodziło.

jeżeli chodzi o pierwszy obrazek to na pewno brakuje kolumny dot. treści komentarza w tabeli post_comment. Co do tabeli post_like to domyślam się że sam wpis jest "lajkiem" bo tam nie ma żadnych innych kolumn oprócz powiązania posta z userem.

co do drugiego obrazka to wydaje się że kolumny z tabeli user_data powinny być w tabeli user bo wydaje się że są unikalne w kontekście usera.

co do tabeli user_statistics to chyba przekombinowałeś. Date\time registration to chyba jest unikalne w kontekście usera, no bo user raz się rejestruje tak ? Jeśli unikalne to wrzucasz te kolumny do tabeli user.
Dlaczego chcesz trzymać datę i czas w osobnych kolumnach. Trzymaj to w jednej a w każdym momencie możesz SQL-em wyciągnąć z tej kolumny co chcesz.
Przypuszczam że kol. last_logging będzie służyła do rejestracji do przechowywania daty i czasu zalogowania się usera. Teraz pytanie czy chcesz trzymać tylko datę i czas zalogowania się usera czy też wylogowania. Bo jeśli chcesz obliczyć np. ile user spędza czasu na forum/stronie to musisz mieć info o wejściu i wyjściu usera.
count_logging jest zupełnie niepotrzebny bo obliczysz to SQL-em a przecież każdy rekord w tabeli user_statistics będzie osobnym wejściem/ew.wyjściem usera.
spend_time hmm tutaj kwestia czy potrzebujesz tą kolumnę bo jeśli będziesz miał czas wejścia i wyjścia usera to nie potrzebujesz czasu przebywanai w osobnej kolumnie bo obliczysz to na podstawie czasu wejścia i wyjścia -> "kwestia gustu" jak chcesz tak będzie.
co do kolumny status w user_statistice to nie wiem co chesz tam przechowywać więc się nie wypowiadam :)

to tak na szybko :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1