Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> kino - projekt bazy danych
spiewak69
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 10.04.2014
Skąd: Szczecin

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


Witam
Zaczynam swoją naukę z bazami danych ( MySQL ) i PHP. Na studiach mam do wykonania aplikacje internetowej rezerwacji biletów.
Znam podstawy MySQL i PHP , lecz nie wiem czy dobrze zaprojektuje swoją bazę żeby była optymalna , nie było zbędnych tabel lub zbyt długich zapytań, lub też niepotrzebnych relacji .
Zrobiłem taki " wstępny ' projekt jednak już wiem że nie bardzo jest .
Proszę więc o pomoc.

Nie wiem na jakiej zasadzie zrealizować seans, repertuar bieżącego dnia, jak rozmieścić tabele i relacje między nimi .
Baza nie ma zawierać danych klienta - bez logowania tylko wpisywanie po prostu imienia i nazwiska + telefon i email podczas zakupu biletu.

Nie wiem jak wziąć się za daty oraz godziny wyświetlania danego filmu / seansu . Czy robić osobne tabele ... Na godziny chyba by mogła być tabela i np stałe godziny seansów.
Podobnie z miejscem zarezerwowanym - zrobić tabelę ( ID statusu, ID miejsca, status ) czy jakoś tak i zero jedynkowo ? miejsce zajęte/wolne ? Ale co wtedy z datą żeby się zwalniało po seansie żeby nie było zajęte na następny film .

(IMG:http://i62.tinypic.com/5z1xfm.jpg)

Proszę o pomysły , sugestie... Poprawienie schematu lub przedstawienie całej bazy jakby mogła wyglądać .
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ghost1511
post
Post #2





Grupa: Zarejestrowani
Postów: 186
Pomógł: 18
Dołączył: 2.09.2010

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


Cytat(spiewak69 @ 11.04.2014, 00:05:42 ) *
Nie wiem na jakiej zasadzie zrealizować seans, repertuar bieżącego dnia, jak rozmieścić tabele i relacje między nimi .
Baza nie ma zawierać danych klienta - bez logowania tylko wpisywanie po prostu imienia i nazwiska + telefon i email podczas zakupu biletu.


Tak jak napisał Ghost_78 musisz rozdzielić rezerwację od seansu. Tak jak w życiu Rezerwację masz na Seans więc są to dwie osobne tabele.
Dane klienta jednak przechowujesz w tabeli Person więc jest ok. wystarczy podać np email aby wyszukać osobę.

Cytat(spiewak69 @ 11.04.2014, 00:05:42 ) *
Nie wiem jak wziąć się za daty oraz godziny wyświetlania danego filmu / seansu . Czy robić osobne tabele ... Na godziny chyba by mogła być tabela i np stałe godziny seansów.
Podobnie z miejscem zarezerwowanym - zrobić tabelę ( ID statusu, ID miejsca, status ) czy jakoś tak i zero jedynkowo ? miejsce zajęte/wolne ? Ale co wtedy z datą żeby się zwalniało po seansie żeby nie było zajęte na następny film .

Osobna tabela na godziny wydaje się złym pomysłem lepiej do seansu dodać pełną datę wraz z godziną rozpoczęcia, id filmu. Wtedy rezerwację robisz na id_seansu i miejsce. Dzięki temu nie musisz pamiętać o statusie. Jeżeli rekord jest w bazie to jest zarezerwowane a jeżeli nie ma to można dokonać rezerwacji.

--edit
1. Osobiście datę i godzinę seansu trzymałbym w jednej kolumnie.
2. W seansie nie trzymaj nazwy filmu a jego ID
3. W tabeli Sala trzymasz movie ID. Masz jeden film przypisany do sali?
4. Nazwy tabel masz na zmianę raz po polsku raz po angielsku - zdecyduj się (IMG:style_emoticons/default/wink.gif)
5. W tabeli Miejsce brakuje informacji o sali (IMG:style_emoticons/default/wink.gif)

Tak na początek (IMG:style_emoticons/default/wink.gif)

Ten post edytował ghost1511 14.04.2014, 07:29:22
Go to the top of the page
+Quote Post

Posty w temacie


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: 16.10.2025 - 05:32