Chciałbym zapytać czy schemat bazy jest poprawny bo wedlug mnie brakuje połaczenia* uzytkownicy - zamowienia* i powinno byc na dowrót *koszyk -< produkty *
Jeżeli miałoby to działać na zasadzie ktoś wrzuca do koszyka produkty i dopiero po zatwierdzenie tworzy się zamówienie to jak najbardziej do zamówień trzeba dorobić klucz obcy do użytkowników. Natomiast co do koszyk - produkt to produkt jest z tego co rozumiem słownikiem i zarówno w koszyk jak i zamowienia_produkty musi być klucz obcy do tabeli produkty
Zakładam, że użytkownicy wrzucają sobie artykuły do koszyka, a później te produkty są przekształcane w zamówienie.
W formie, którą przedstawiłeś tabela koszyk pełni funkcję tabeli łączącej użytkowników z produktami w relacji wiele-do-wielu - ID w tej tabeli nie jest potrzebne (podobnie w tabeli zamowienia_produkty
) - relacja jest poprawna.
Co do połączenia tabeli uzytkownicy
z tabelą zamowienia
, to w tabeli zamowienia
jest pole uzytkownicy_id
- brakuje tylko klucza obcego (tak jak napisał @woolfik).
Można też jeszcze się zastanowić, czy nie zrezygnować z tabeli zamowienia_produkty
i nie dodać pola zamowienia_id
(z kluczem obcym) w tabeli koszyk - wówczas zamówienie produktu byłoby możliwe tylko poprzez koszyk.
[Adam]