Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Baza danych wypożyczalni filmów dvd
Forum PHP.pl > Forum > Bazy danych > Access
Kuba1989
Witam,
Jestem początkującym programistą baz danych i dopiero się uczę. Mam za zadanie w formie ćwiczeniowej wykonanie bazy danych dla wypożyczalni filmów dvd. Ale nie wiem, czy jest to dobrze i gdyby ktoś mógł dać mi jakąś wskazówkę byłbym bardzo wdzięczny. Wiem, że połączenie "WYPOŻYCZENIA" i "PARAGONU" (ID_Paragonu) jest źle tak samo jak "REZERWACJI" i "FILMU" (ID_Rezerwacji).
Ale nie mam pojęcia, jak rozwiązać ten problem.

jaslanin
Rozwiń dlaczego według Ciebie połączenie WYPOŻYCZENIA" i "PARAGONU" jest złe. Mi się wydaje logiczne. O ile jest potrzebne oczywiście.

Rejestr powinieneś nazwać np. RejestrFilmWypozyczenie, a Rejestr2 RejestrFilmRezerwacje by nazwa sugerowała zawartość.

Nie wiem po co masz w rezerwacje i wypożyczenia masz id_filmu skoro przez rejestry masz te dane połączone

Masz źle połączone rezerwacje z rejestr 2, bo id filmu łączy Ci się z id_rezerwacji
Kuba1989
Jest to "surowy" obraz, który już wielokrotnie był poprawiany. Głównie chodzi o to, żeby "działało".

Wprowadziłem kilka najważniejszych zmian ale wykładowca znów odesłał z zaznaczeniem błędów. Ma to do siebie, że wskaże błąd ale nie powie jak go poprawić.
Tabela "paragon" została dodana na życzenie wykładowcy, który stwierdził, że jest ona potrzebna...
Może wrzucę poprawiony obraz z wskazanymi błędami

jaslanin
pierwsze kółko od lewej zaznaczył Ci ponieważ powinno być w nim znaczek "do wielu"

Odnośnie reszty już pisałem: "Nie wiem po co masz w rezerwacje i wypożyczenia masz id_filmu skoro przez rejestry masz te dane połączone"
croc
Twój model zakłada, że na jednym paragonie może być tylko jeden tytuł. Po drugie nie wiem co robi ID rezerwacji w tabeli Film. Ja bym trochę zmienił tę strukturę, bo jest dość chaotyczna. Ja bym zrobił tabelę Film zawierającą tylko dane filmów. Potem tabelę np. Nośniki, zawierającą rodzaje nośników (VHS/DVD/Blu-Ray). Potem tabelę Egzemplarze z ID egzemplarza, ID filmu, ID nośnika, ceną. Potem tabelę Wypożyczenia z datami, ID klienta, ID egzemplarza itd. Rejestr i Rejestr 2 są bardzo nieintuicyjne.

EDIT

Zapomniałem coś dodać. Unikaj czegoś takiego jak kolumna Gatunek w tabeli Gatunek. To jest tautologia - w gatunkach są tylko gatunki i są one obiektami logicznymi. Kolumna nie zawiera całego gatunku tylko jego NAZWĘ, więc pole powinno się nazywać Nazwa.
Kuba1989
Dziękuję bardzo za pomoc. Wasze wskazówki są już wprowadzane w Accesie. Ale nadal mam problem z relacją Paragon i Wypożyczenie. Nie wiem dlaczego jest źle...

croc
Nie wiem co się wykładowcy nie podoba teraz w paragonie, ale odpowiedz mi na pytanie: czy dostałeś wytyczne na te dwa rejestry? One zaciemniają całą strukturę, a dodatkowo mają błędy. Przykład: klient rezerwuje 3 filmy i wszystkie mają ten sam termin oddania. Poza tym rezerwacja chyba ma raczej termin wygaśnięcia, a nie oddania. Jeśli możesz, to wyrzuć te rejestry. Historia wypożyczeń wynika z tabeli Wypożyczenia, a historia rezerwacji z tabeli Rezerwacje. Nie mówiąc o tym, że te nazwy Rejestr i Rejestr 2 nic nie mówią.
Kuba1989
Rejestry mam dobrze zrobione (przynejmniej według prowadzącego). Rejestry same w sobie mają inną nazwę wprowadzoną już w Accesie.

Może powinienem dodać do Paragonu jeszcze ID_Wypożyczenia? Ale nie wiem jak to połączyć...
croc
"Wypożyczenie" kojarzy mi się z wypożyczeniem egzemplarza, a u ciebie to oznacza chyba całą wizytę. Nie chce mi się analizować twojej struktury przez te nieszczęsne bezsensowne rejestry. Ale jeśli jest tak jak mówię, to raczej jedno "wypożyczenie" to jeden paragon. Ale tak jak mówię - zaprojektowałbym od nowa.
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.