Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Schemat bazy - kto rzuci okiem?
Boshi
post
Post #1





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

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


Cześć, może ktoś rzucić okiem i powiedzieć co jest dobrze, co jest źle ?
System będzie służył do rezerwacji miejsc w kinie.

(IMG:http://i64.tinypic.com/znv66u.png)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Nie mam za bardzo czasu teraz na to patrzec dluzej, ale na szybko rzuca mi sie w oczy ze rozbijasz date na dwa pola: dzien i godzina. Po co? Przeciez to powinno byc jedno pole z typem DateTime
Go to the top of the page
+Quote Post
Pyton_000
post
Post #3





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Do tego dodaj klucz Unique na email i username, żeby nie można było się zarejestrować 2x na te same dane bo będzie kuku (IMG:style_emoticons/default/smile.gif)

Tak poza tym wydaje się ok.
Go to the top of the page
+Quote Post
Boshi
post
Post #4





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

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


Tak wiem, muszę dziś zacząć już tworzyć bazę dlatego chcę się upewnić by potem nie było kwiatków.

Nospor- racja powinoo być powle DateTieme.
Go to the top of the page
+Quote Post
IProSoft
post
Post #5





Grupa: Zarejestrowani
Postów: 479
Pomógł: 97
Dołączył: 6.09.2011
Skąd: php.net :)

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


Ja dodam tylko od strony poprawnosci nazewnictwa ( ja takie stosuję dla wygody ):
- movie zamiast film,seanse , jak już po angielsku to wszystko
- nazwy tabel z małej litery, podkreślnik nie myślnik do rozdzielania
- skoro user_id, to to room_id zamiast id_room itp

Go to the top of the page
+Quote Post
KR2615
post
Post #6





Grupa: Zarejestrowani
Postów: 311
Pomógł: 13
Dołączył: 7.05.2007

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


Cytat(nospor @ 3.11.2015, 09:52:37 ) *
Nie mam za bardzo czasu teraz na to patrzec dluzej, ale na szybko rzuca mi sie w oczy ze rozbijasz date na dwa pola: dzien i godzina. Po co? Przeciez to powinno byc jedno pole z typem DateTime

Ja w tym widzę jakiś sens, np. jeśli kino oferuje seanse o kilku stałych godzinach, można potem jednym zapytaniem stworzyć statystyki, która godzina senasu jest najpopularniejsza albo generuje największe zyski.
Go to the top of the page
+Quote Post
nospor
post
Post #7





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Przeciez moze to samo zrobic DateTime
Go to the top of the page
+Quote Post
Boshi
post
Post #8





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

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


Odkopię trochę temat.

Tak się zastanawiam teraz. Czy aby na pewno tablea Room powinna mieć datę, nie wystarczy by seans miał ?

Tak wygląda baza już z typami.

(IMG:http://s9.postimg.org/mxyr13r3v/baza.jpg)

Zastanawiam się jak to połączyc teraz.

1 Dodaje room
2 Dodaje miejsca
3 Dodaje film
4 dodaje senas?

Jeżeli użytkownik zarezerwuje jakiś seans to do tabeli rezerwacja przypisuje owego usera a do tabeli reservation_place dodaje id rezerwacji, id place i id room? to ma sens skoro id place przechowuje id room?
Daty będą walidowane aby się nie pokrywały w tych samych salach.


Go to the top of the page
+Quote Post
nospor
post
Post #9





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Czemu w ROOM masz w ogole id_movie? Przeciez to tabela seans laczy movie i room. W tabeli room ma byc tylko id i nazwa pokoju i to wszystko.

Length w movie ma byc INT - dlugosc podaje sie w minutach i jest to raczej liczba calkowita

podobnie z reservation_place i reservation przekombinowales. po co tam w ogole te dwie tabele a nie jedna?
Go to the top of the page
+Quote Post
Boshi
post
Post #10





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

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


Sugerowałem się tym co napisał Pyton (IMG:style_emoticons/default/smile.gif)

No więc tak: Zmienię typ length- nie wiem czemu tam float wsadziłem, pewnie coś kombinowałem..

Jeżeli chodzi o rezerwacje, to mówisz, że po prostu dać jedną tabelę łączącą? czyli reservation_place (w ogóle nazwa jakaś taka...) i dodać tam po prostu usera jeszcze i skasować id_reservation oraz zamiast id_room będzie id_seans?

I jeszcze jedno pytanie. Mamy np pokój(sala jak zwał tak zwał) nr 1, ma on 100 miejsc. Nie wiem czy dobrze myślę, ale dla 4 pokoi będzie 400 rekordów w tabeli place? czy znów mam zaćmę? Dla każego pokoju muszę mieć 100 miejsc?

EDIT; Tak to wygląda teraz. Wydaje mi się, że będzie ok?

(IMG:http://files.tinypic.pl/i/00736/3m28uygxw0v3_t.jpg)

Ten post edytował Boshi 14.12.2015, 02:23:10
Go to the top of the page
+Quote Post
Pyton_000
post
Post #11





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


To chyba nie ja Ci sugerowałem coś (IMG:style_emoticons/default/biggrin.gif) Albo ja mam zaćmę mózgu :|
Go to the top of the page
+Quote Post
Boshi
post
Post #12





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

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


Chyba jednak zaćma pyton (IMG:style_emoticons/default/biggrin.gif) Zobacz swój drugi post. "Wydaje się być ok" (IMG:style_emoticons/default/biggrin.gif)
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: 2.10.2025 - 15:37