[diagram ERD] prośba o sprawdzenie poprawności połączeń

[diagram ERD] prośba o sprawdzenie poprawności połączeń
Shen
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 11
0

Hej, stworzyłem swój pierwszy diagram ERD biblioteki i chciałbym abyście ocenili jego poprawność, czy to ma sens co narysowałem.

Wszystkie uwagi mile widziane, jak coś byście dodali to piszcie śmiało. Jak diagram będzie w porządku, to chcę stworzyć te tabele i zapełnić je danymi.
title

CM
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Warszawa
  • Postów: 118
0

W relacji Customers_Orders_Book zrezygnował bym z kolumny quantity. Niekonsekwencja w nazewnictwie np. relacje Book i Adresses polecam wszystko w liczbie mnogiej oraz kolumny title i comments polecam wszystko w liczbie pojedynczej.

EDIT:

Jest tu pewna niekonsekwencja. Łączysz relacje Adresses i Customer związkiem wiele do wielu zakładając, że ktoś może zmienić adres. Jednak zostawiasz informacje o mailu (to może być ok jeżeli jest to identyfikator w twoim systemie i wtedy nie powinno być możliwości jego zmiany) i telefonie w relacji Customer zakładając, że ktoś ma tylko jednego maila/telefon i w konsekwencji jedyną możliwością zmiany jest update na tabeli i stracenie pierwotnej informacji.

Shen
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 11
0

ok, dziękuje za odpowiedź,
mógłbyś mi napisać dlaczego mam tutaj Customers_Orders_Book oraz tabelę Customer_Orders

diagram stworzyłem sam w 100% ale mocno wzorowałem się na tym co znalazłem w internecie i do końca nie rozumiem czemu mają służyć te dwie tabelki, a te połączenia 100% dobrze?

CM
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Warszawa
  • Postów: 118
1

Żeby uniknąć nadmiarowości danych. załóżmy, że masz następującą sytuację zamówienie orderID 1 na książki bookID 1, 2, 3 oraz książka bookID 1 byłą zamawiana w zamóieniach orderID 1, 2, 3, gdybyś nie miał pomocniczej relacji, poważał byś dane a tak masz tylko

bookId orderID
1 1
1 2
1 3
2 1
3 1
CM
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Warszawa
  • Postów: 118
1

Związki są ok, ale jest to bardzo prosty schemat. Gdybyś chciał go dostosować chociaż trochę do wersji produkcyjnej na pewno musiał byś dodać sporo dodatkowych informacji. Np. okresy w których książka jest wypożyczona, opóźnienia, kary za opóźnienie, autorzy książek do oddzielnej relacji, czas powstawania nowych wpisów (przydatne do analiz) itd.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.