Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Baza danych sklepu - czy dobrze to zrobiłem?
Forum PHP.pl > Forum > Bazy danych
sweter
Witam,
Konkretnie chodzi mi tylko tabele przechowujące informacje o zamówieniach:

zamowienie
  1. id
  2. data_czas
  3. id_uzyt
  4. koszt
  5. zaplacono


produkty_zam
  1. id
  2. id_zam
  3. id_prod
  4. cena_brutto
  5. cena_netto
  6. vat
  7. sztuk
  8. koszt


produkty
  1. id
  2. nazwa
  3. cena_netto
  4. cena_brutto
  5. vat


Powiązania wyglądają w ten sposób:
zamowiena.id = produkty_zam.id_zam
produkty.id = produkty_zam.id_prod

Co myślicie o takiej bazie danych? Pierwszy raz robię sklep internetowy i nie chciałbym czegoś zwalić.
Co byście poprawili?
Pozdrawiam
zbig
Witam !
W tabeli zamowienie nie powinno byc pola koszt, poniewaz masz go juz w tabeli produkty_zam, co zreszta tez nie jest konieczne. Trzymaj w tabelach dane tzw. atomowe
Niepotrzebne jest powielanie informacji w Tabelach zamowienie, produkty_zam i produkty.
Chodzi konkretnie o pola netto, brutto, vat, sztuk, koszt. jezeli masz cene brutto i vat, netto latwo obliczyc, jezeli masz ilosc i brutto calkowity koszt tez mozna obliczyc.
Unikaj powielania danych, ktore po przeliczeniu i skroceniu do dwoch miejsc po przecinku moga miec rozne wartosci. ( A tak czasen bywa w sklepach jezeli nie trzymasz sie jednej regoly liczenia cen ).
Tabela produkty powinna miec referencje category_id, czyli polaczenie z jakas kategoria.

Czyli

zamowienie
1. id
2. data_czas
3. id_uzyt
4. status_id

produkty_zam
1. id
2. id_zam
3. id_prod
4. sztuk

produkty
1. id
2. nazwa
3. cena_brutto
4. vat
5. category_id

categories
1. id
2. nazwa
3. parent_category_id

status
1. id
2. nazwa // np zamowiono, zaplacono, w przygotowaniu, wyslano, doreczono

Oczywiscie wszedzie indeksy, klucze obce etc.

To tak baaaaaaaardzo mniej wiecej.
Obejrzej sobie moze dla informacji jakas strukture gotowego sklepu ( nawet OSC albo XTCommerce ), zobaczysz tam duzo wiecej tabel.
Nie wiem czy uwzgleniasz sytuacje ze user moze pakowac produkty do koszyka, a wcale nie laduje w kasie i nie kupuje. Te dane dobrze jest trzymac w jakiejs tabeli user_basket do celow czysto marketingowych, ale to juz zupelnie inna bajka.

Pozdrawiam

sweter
A jak zrobić tabelę koszyka? Bo ja mam takie coś:
  1. id
  2. id_uzyt
  3. id_prod
  4. ilosc

Dobrze to zrobiłem?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.