Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Baza danych sklepu - czy dobrze to zrobiłem?
sweter
post
Post #1





Grupa: Zarejestrowani
Postów: 623
Pomógł: 11
Dołączył: 1.01.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


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
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
zbig
post
Post #2





Grupa: Zarejestrowani
Postów: 144
Pomógł: 30
Dołączył: 5.05.2007
Skąd: Mannheim

Ostrzeżenie: (0%)
-----


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

Go to the top of the page
+Quote Post
sweter
post
Post #3





Grupa: Zarejestrowani
Postów: 623
Pomógł: 11
Dołączył: 1.01.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


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

Dobrze to zrobiłem?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 11:58