![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 250 Pomógł: 11 Dołączył: 20.01.2014 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
zastanawiam się w jaki sposób zapisać w bazie złożone zamówienie w sklepie internetowym Mam kilka pomysłów, żaden mi się w 100% nie podoba, ale nie mam innych. Może coś doradzicie. 1. Dla każdego zamówienia tworzę oddzielną tabelę czyli np zamówienia 123456 i w nim: 1 rekord nazwa cena, 2 rekord nazwa cena ... n-3 rekord adres dostawy, n-2 rekord suma zamówienie, n-1 rekord dostawa, n rekord status zamówienia Minus tego rozwiązania to że baza będzie miała mnóstwo tabel i nie jestem pewien czy to dobre rozwiązanie zwłaszcza że chce przechowywać historię zamówień 2. Stworzenie 1 tabeli 'zamówienia' i w niej przechowywać rekordy zamówień, tylko tutaj jeśli zamówienie będzie miało więcej niż 1 przedmiot to dane zamówienie zajmie więcej niż 1 rekord w tabeli. A wyświetlanie takiego zamówienia będzie wymagało prześwietlenie całej tabeli i wyszukanie produktów o danym id zamówienia i z czasem tabela będzie miała tysiące rekordów i czas zapytań się wydłuży i nie sądzę żeby to było dobre rozwiązanie. I to są moje pomysły. Jak to zrobić lepiej? |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Rozwiązanie nr 1 jest totalnie bez sensu. Drugie ok, a tysiące rekordów to żaden problem.
zamówienia id_zamówienia | data| cena | forma_dostawy | etc... zamówienia_produkty id_zamowienia | id_produktu | ilosc | cena |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 250 Pomógł: 11 Dołączył: 20.01.2014 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Przy odpowiedniej optymalizacji spokojnie sobie poradzi.
Na siłę możesz też trzymać wszystko w jednym rekordzie, a listę produktów np. serializować albo do jsona. Ten post edytował Turson 30.09.2014, 10:20:21 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 00:30 |