• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Ocena projektu bazy danych ksiegarnia online

Object Storage Arubacloud
0 głosów
4,305 wizyt
pytanie zadane 25 marca 2017 w SQL, bazy danych przez balti Obywatel (1,040 p.)
zamknięte 26 marca 2017 przez balti

Witam,

Ostatnio zainteresowałem się bazami danych i stworzyłem swój pierwszy projekt bazy "księgarnia online" :

Czyli klient jest w stanie złożyć wiele zamówień każde zamówienie może być na wiele książek itd

Zastanawiam się, jak określić ile książek o danym tytule jest na stanie?

Czy może ktoś to ocenić i doradzić nad czym się skupić, co poprawić itd?

komentarz zamknięcia: W komentarzach odpowiedzieli,  jak mogę usprawnić bazę, dlatego zamykam ;)

2 odpowiedzi

+1 głos
odpowiedź 25 marca 2017 przez ShiroUmizake Nałogowiec (46,300 p.)
Tak, ale każde zamówienie to osobne id.

Dołoż magazyn: Magazynie jest wiele książek, ale jedna książka ma jeden magazyn.  Magazyn przechowuje ilość ksiązek (stock).
0 głosów
odpowiedź 25 marca 2017 przez balti Obywatel (1,040 p.)
edycja 25 marca 2017 przez balti

Tak teraz to wygląda. Zastanawiam się, jak bym mógł tą bazę usprawnić i na czym powinienem się skupić przy projektowaniu baz ?

komentarz 25 marca 2017 przez ShiroUmizake Nałogowiec (46,300 p.)

Tak, oczwyscie tak sie da bez problemu,tylko jak potem zrealizowac takie zamowienie? Zauwaz, ze jakies zamówienie może być zrealizowane np. na drugi dzien, jak wtedy odtworzyc sobie zamowioną ilosc jakiegos towaru?

Zapasowa tabela? (Oznakowanie "dirty" niezrealizowany), bądż z redo logów. 

komentarz 25 marca 2017 przez lukas$ Gaduła (3,390 p.)
Wszystkie zamówienia mogą zostać przyjęte jednego dnia a realizowane przez system automatycznie drugiego wtedy będą się wszystkie sumować lub w bazie danych utworzyć formułę że zlecenia są przyjmowane do którejś godziny a po tej godzinie realizowane na drugi dzień.

Reasumując wtedy baza danych zlicza wszystkie zamówienia jednego dnia do określonej godziny i masz podsumowanie ilości ile jest w magazynie.

W bazie zamówienia które są po tej godzinie są jakby zatrzymane pause i uruchamiane z nowym licznikiem całego magazynu produktów. Jeżeli dany produkt ma w magazynie 0 wtedy zamówienie jest anulowane i wysyłana informacja do użytkownika zamówienia, Nowe zamówienia mogą być przesuwane przez operację w bazie danych na następny dzień lub w bazie danych możesz ustawić limit produktów wtedy nie będziesz miał problemu z nadwyżką zamówień.
komentarz 25 marca 2017 przez mbabane Szeryf (79,280 p.)

lukas$,

Nie wiem czy wszystko dobrze zrozumiałem.

Reasumując wtedy baza danych zlicza wszystkie zamówienia jednego dnia do określonej godziny i masz podsumowanie ilości ile jest w magazynie.

Czy jeśli chce złożyć zamówienie na 50 egzemplarzy jakiegoś towaru, to czy wtedy muszę składać 50 osobnych zamówień?

Czy to co przedstawiłeś to jest jakiś konkretny algorytm, czy Twoje własne przemyślenia?

komentarz 26 marca 2017 przez lukas$ Gaduła (3,390 p.)
To są moje przemyślenia. Prosiłeś o bazę aby była klarowna i przejrzysta to podałem kilka wskazówek jak mogłaby wyglądać.

Zamówienie na 50 egzemplarzy to o ile się nie mylę traktuję się jako jedno zamówienie po ID

Z tego co rozumiem utworzyłeś bazę danych dla każdego klienta który zamawia książki i za nie płaci.

Kolega wyżej podpowiedział dobrze utworzenie magazynu w którym istnieją książki i po zamówieniu są odliczane od sumy magazynowej.

Wtedy masz ciągle aktualny stan magazynu i książek

Bo jeśli dodasz pozycję z magazynu - x

książek zamówionych przez klienta y

to suma książek w magazynie zmniejszy się o wartość ujemną

Przykład wziąłem z Excel'a ale prawdopodobieństwo napisania ich jako  echo i var powinien serwer i baza odbierać że jeżeli istnieje taka funkcja lub wartość to zostanie zrealizowane zamówienie lub jakaś pozycja jeśli jej nie ma zostanie odrzucona jak napisałeś wcześniej dirty bo wartość książek w magazynie wynosi 0.

Nie znam się dokładnie na bazie danych.
komentarz 26 marca 2017 przez mbabane Szeryf (79,280 p.)

Nie nie, ja nie jestem autorem bazy danych - tez staram sie pomoc.

Zamówienie na 50 egzemplarzy to o ile się nie mylę traktuję się jako jedno zamówienie po ID

Teoretycznie tak, ale w praktyce mamy jeszcze tabelke dzieki, ktorej do jednego zamowienia mozemy dodac wiele ksiazek.

Podobne pytania

0 głosów
0 odpowiedzi 471 wizyt
pytanie zadane 25 kwietnia 2017 w SQL, bazy danych przez FocuSsmok Początkujący (450 p.)
0 głosów
0 odpowiedzi 78 wizyt
0 głosów
1 odpowiedź 4,192 wizyt
pytanie zadane 24 lipca 2018 w SQL, bazy danych przez Antero00 Gaduła (3,670 p.)

92,539 zapytań

141,382 odpowiedzi

319,476 komentarzy

61,928 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...