Zadania Projektowanie

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 2

Zadanie 1.

Na potrzeby pewnego ogrodu zoologicznego należy skonstruować bazę danych. Ma ona przechowywać dane o
pracownikach ogrodu (imię, nazwisko, datę zatrudnienia, PESEL, telefon kontaktowy, funkcja jaką pełni dany
pracownik, wartość dodatku uznaniowego oraz jakimi klatkami ze zwierzętami się opiekuje), o funkcjach
(stanowiskach) jakie mogą pełnić pracownicy ogrodu (nazwa funkcji, wynagrodzenie zasadnicze dla
pracownika pełniącego daną funkcję), o zwierzętach przebywających w ogrodzie (imię, gatunek, wiek
zwierzęcia, numer klatki, kolor zwierzęcia, wymagana wielkość klatki w której może przebywać dane zwierzę),
o gatunkach zwierząt (nazwa gatunku), o klatkach dla zwierząt (rodzaj i wielkość klatki).

Projektowana baza ma działać według zasad:


 Każdy pracownik może pracować tylko na jednym stanowisku (pełnić jedną funkcję).
 Każde zwierze należy do jednego gatunku.
 W jednej klatce może znajdować się kilka zwierząt tego samego gatunku.
 Jedną klatką ze zwierzętami może opiekować się kilku pracowników ogrodu, oraz jeden pracownik
może opiekować się kilkoma klatkami ze zwierzętami.

1. Zaprojektować bazę danych w postaci diagramu ERD. (6 punktów)


2. Opisać szczegółowo dwa wybrane więzy integralności, przy czym jeden ma być więzem integralności
encji, a drugi więzem integralności referencyjnej. (1+2=3 punkty)

Zadanie 2.
Dla potrzeb pewnej wypożyczalni kajaków postanowiono przechowywać w bazie danych informacje
o funkcjonowaniu tej wypożyczalni. Działanie wypożyczalni kajaków wygląda tak, że klienci wypożyczają
kajaki o określonej porze (data, godzina) na określony czas (w godzinach). Jeden klient może wypożyczać
kilka kajaków o różnych porach lub nawet o tej samej porze (np. gdy jest opiekunem grupy wycieczkowej). Na
potrzeby wypożyczalni zaproponowano bazę danych, która składa się z jednej tabeli KAJAKI o następującym
schemacie:

KAJAKI={IMIE, NAZWISKO, PESEL, ID_KAJAKA, KOLOR_KAJAKA, TYP_KAJAKA,


DATA_WYP, GODZINA_WYP, DATA_ZWR, GODZINA_ZWR },

przy czym znaczenia powyższych atrybutów występujących w schemacie są następujące:


 IMIE – imię klienta wypożyczającego kajak,
 NAZWISKO – nazwisko klienta wypożyczającego kajak,
 PESEL – numer PESEL klienta wypożyczającego kajak,
 ID_KAJAKA – unikalny identyfikator wypożyczanego kajaka,
 KOLOR_KAJAKA - kolor wypożyczanego kajaka,
 TYP_KAJAKA – typ wypożyczanego kajaka,
 DATA_WYP – data wypożyczenia kajaka,
 GODZINA_WYP – godzina wypożyczenia kajaka,
 DATA_ZWR – data zwrotu kajaka,
 GODZINA_ZWR – godzina zwrotu kajaka.

1. W jakiej postaci normalnej jest tabela KAJAKI? Odpowiedź uzasadnić! (3 punkty)


2. Wykazać, że powyższa baza danych ma anomalia danych (wyszczególnić jakie anomalia). (3 punkty)
3. Przekształcić schemat bazy danych w ten sposób, aby baza w dalszym ciągu przechowywała wszystkie
niezbędne informacje, ale nie zawierała już anomalii. (4 punkty)
4. W jakiej postaci normalnej są tabele bazy danych po przekształceniu? Odpowiedź uzasadnić! (4 punkty)
Zadanie 3.

Na rynku motoryzacyjnym, w obrębie danej marki producenci wprowadzają na rynek kolejne modele
pojazdów. Zatem każdy samochód zawsze kojarzony jest z marką, a właściwie konkretnym modelem, który
zawiera w sobie informację o marce. Należy skonstruować bazę danych zawierającą informacje na temat
wyprodukowanych samochodów. Ma ona przechowywać informacje o konkretnych modelu samochodu (nazwa
marki – np. Fiat, nazwa modelu – np. Punto, moc silnika, pojemność silnika, rodzaj samochodu – np. osobowy,
furgonetka, autobus, ciężarowy itp.), o konkretnych egzemplarzach samochodów (model, rok produkcji, nr
rejestracyjny, kolor, w jakiej fabryce został wyprodukowany, aktualna wartość rynkowa), o fabrykach
produkujących samochody (nazwa fabryki, nazwa miasta w którym znajduje się fabryka), o właścicielach
konkretnych samochodów (imię, nazwisko, nazwa miasta zamieszkania właściciela, PESEL).

Projektowana baza ma działać według zasad:


 Jeden właściciel może posiadać kilka egzemplarzy różnych samochodów.
 Jeden egzemplarz samochodu może mieć kilku właścicieli (współwłasność).
 Jedna fabryka samochodów produkuje wiele egzemplarzy samochodów, dany egzemplarz samochodu
został wyprodukowany przez jedną fabrykę.
 Każdy samochód jest określonego modelu, natomiast w bazie danych mogą być przechowywane
informacje na temat wielu modeli.
 Każdy samochód ma określony jeden kolor i jest to kolor aktualny (nie jest przechowywana informacja
o kolorze pierwotnym samochodu, jeżeli został zmieniony na inny).

3. Zaprojektować powyższą bazę danych w postaci kompletnego diagramu ERD. (6 punktów)


4. Opisać szczegółowo dwa wybrane więzy integralności, przy czym jeden ma być więzem integralności
encji, a drugi więzem integralności referencyjnej. (1+2=3 punkty)

Zadanie 4.

Do reprezentowania informacji o konkretnych lokalach mieszkalnych (mieszkania lub domy) na terenie miasta,
Urząd Miasta korzysta z bazy danych zawierającej tabelę Lokale o następującym schemacie:

Lokale = {Pesel_właściciela, Pesel_lokatora,


Imię_właściciela, Imię_lokatora,
Nazwisko_właściciela, Nazwisko_lokatora,
Dzielnica, Ulica, Nr_domu, Nr_lokalu, Powierzchnia_lokalu}

1. W jakiej postaci normalnej jest tabela Lokale? Swoją odpowiedź uzasadnij. (3 punkty)
2. Wskaż rodzaje istniejących anomalii w przedstawionym projekcie bazy danych, krótko je
scharakteryzuj (3 punkty).
3. Przekształć proponowany schemat bazy danych w ten sposób, aby baza w dalszym ciągu
przechowywała wszystkie niezbędne informacje, ale nie zawierała już anomalii (4 punkty).
4. W jakiej postaci normalnej będą tabele bazy danych po przekształceniu. Swoją odpowiedź uzasadnij
(3 punkty).

Informacje dodatkowe:
 właściciel - to osoba mająca akt własności danego lokalu (można być właścicielem wielu lokali i
każdy lokal może mieć wielu właścicieli),
 lokator to osoba aktualnie mieszkająca w danym lokalu czyli wynajmująca dany lokal (zakładamy,
że dana osoba może wynajmować wiele lokali i każdy lokal może mieć wielu lokatorów),
 dana ulica może przecinać więcej niż jedną dzielnicę ale konkretny budynek leży w jednej
dzielnicy.

You might also like