![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 171 Pomógł: 18 Dołączył: 17.04.2006 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Poszukuje jakiegoś sensownego rozwiązania odnośnie pewnego problemu. Problem pojawia się choćby w sklepie internetowym, chodzi o relacje produkt - zamówienie. W uproszczeniu tabela zamówienia zawiera id produktu plus wiadomo dodatkowe informacje. Kwestia co zrobić gdy produkt zostanie usunięty, a użytkownik będzie chciał zobaczyć szczegóły zamówień czyli jakie produkty i za ile kupił. Wiadomo mogę wyświetlić informacje, że produktu już w bazie nie ma lub np po złożonym zamówieniu zapisywać je po prostu do pliku.
Macie jakieś ciekawe pomysły? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 395 Pomógł: 80 Dołączył: 24.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Relacja produkt zamówienie to relacja wielu do wielu, jeden produkt może należeć do wielu zamówienień a zamówienie może mieć wiele produktów.
Co do usuwania produktów, możesz dublować dane produktu na przykład wiążąc dodatkową tabelę zawierającą zdublowane dane produktów z tabelą zamówienia, wtedy usuwając produkt z właściwej tabeli wciąż masz o nim informacje. Lub drugie podejście, nie usuwać produktów a oznaczać je tylko jako usunięte, dla klienta produkty nie są widoczne ale w dokonanych zamówieniach masz dostęp do tych produktów. W jednym ze swoich projektów miałem sytuację w której dane o produktach zmieniały się, zamówiernia klientów musiały dotyczyć produktów których cena była taka jak w chwili zamówienia, rozwiązałem to poprzez dodanie tabeli pozycje zamówienia, połączonej z zamówieniami z której były odnośniki do oryginalnych produktów plus informacje które mogły się zmienić jak: cena produktu. W ten sposób nawet po oznaczeniu produktu jako niedostępny, lub zmienie jego ceny, poprzednie zamówienia klientów mogły być ponownie realizowane na podstawie poprzednich danych. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 27.09.2025 - 16:30 |