ZADANIE 1 (80)
Brytyjska agencja pracy InstantCover dostarcza czasowych pracowników do hoteli w Szkocji.
W arkuszu danych firmy istnieje poniższa tabela:
NIN - Numer Ubezpieczenia pracownika (National Insurance Number)
ContractNo - identyfikator kontraktu
HoursPerWeek - liczba godzin pracy w tygodniu
EName - Imię i nazwisko pracownika
HotelNo - Identyfikator hotelu
HotelLocation - lokalizacja hotelu
Zadanie A (20):
Stwórz relację w 0NF, następnie w1NF.
Przedstaw przykłady możliwych efektów ubocznych (anomalii), które mogą wystąpić podczas
przetwarzania danych w tej tabeli.
Zadanie B(60):
Przedstaw wszystkie zależności funkcjonalne i przeprowadz proces normalizacji (do BCNF).
Narysuj Logiczny Model Informacji ERD.
ROZWIZANIE:
1. 0NF: ZATRUDNIENIE = NIN + CN + HPW + EN + HN + HL.
2. Lista FD:
FD1 = {NIN EN}
FD2 = {HN HL}
FD3 = {CN (HN, HL)}
FD4 = {(NIN, CN) (HPW, EN, HN, HL)}
3. 1NF:
Brak dodatkowych danych o metodach przetwarzania wpisów w tabelce powoduje, że nie
dokonuję dekompozycji żadnego atrybutu i nominuję FD4 do roli PK, bowiem obejmuje
wszystkie atrybuty relacji:
RZATRUDNIENIE = {(NIN, CN) (HPW, EN, HN, HL)}
EFEKTY UBOCZNE:
a) WPROWADZANIA: nie można wprowadzić osobno informacji o nowym pracowniku,
hotelu lub kontrakcie.
b) MODYFIKACJI: zmiana atomowej informacji, np.: nazwiska jednego pracownika, będzie
wymagała modyfikowania wielu wierszy relacji.
c) USUWANIA: usunięcie wiersza zatrudnienia pracownika, który był zatrudniony tylko w
jednym kontrakcie, spowoduje utratę jego danych z bazy.
4. NORMALIZACJA:
4.1. FD1 łamie 2NF w relacji ZATRUDNIENIE dokonuję dekompozycji relacji
ZATRUDNIENIE:
RZATRUDNIENIE = {(NIN, CN) (HPW, HN, HL)}
RPRACOWNICY = {NIN EN}
5. 4.2. FD3 łamie 2NF w relacji ZATRUDNIENIE dokonuję dekompozycji relacji
ZATRUDNIENIE:
RZATRUDNIENIE = {(NIN, CN) HPW}
RPRACOWNICY = {NIN EN}
RKONTRAKTY = {CN (HN,HL)}
6. 4.2. FD2 łamie 3NF w relacji KONTRAKTY dokonuję dekompozycji relacji
KONTRAKTY:
RZATRUDNIENIE = {(NIN, CN) HPW}
RPRACOWNICY = {NIN EN}
RKONTRAKTY = {CN HN}
RHOTELE = {HN HL}
Model ERD
ZADANIE 2 (10)
Wymień dwa powody, dla których przedstawiona tabela nie może być relacją w relacyjnym modelu
danych (E.Codd)
A B A
1 2 3
4 5
6 7 8
9 9 ?
1 2 3
ROZWIZANIE:
Powód 1 W prawidłowej relacji, każdy atrybut musi posiadać unikalną nazwę, tym czasem dwie
kolumny tabeli posiadają taki sam nagłówek (nazwa A ).
Powód 2 Prawidłowa Relacja musi posiadać klucz główny. Na przedstawionej tabeli nie można
wypromować klucza głównego, bo wiersze: pierwszy i ostatni mają takie same
wartości.
ZADANIE 3 (10)
Załóżmy, że istnieje relacja R, która posiada cztery atrybuty A,B,C,D i klucz główny złożony z pary
atrybutów A i B, co można zapisać następująco: 1 , , , . Zdefiniuj taką listę
dodatkowych zależności funkcjonalnych FDn relacji R(A,B,C,D), żeby relacja była w 1NF i 2NF, ale nie
spełnia 3NF.
ROZWIZANIE:
" Przedstawiona relacja R spełnia 1NF, bowiem zawiera FD1, która łączy wszystkie atrybuty
relacji R i definiuje klucz główny.
" Przedstawiona relacja R spełnia 2NF, bowiem nie posiada innych FD, w których atrybutem
dominującym byłaby część klucza głównego.
" Złamanie 3NF będzie zachodziło, jeżeli w relacji R będzie istniała FD, zdominowana przez
atrybut, niebędący kluczem głównym relacji R.
" Wystarczy zdefiniować następującą zależność: 2 , która doprowadzi do
złamania 3NF.
Wyszukiwarka
Podobne podstrony:
poprawa kolokwium I i II E i EN rozwiązaniakartkowka 1 poprawa rozwiazanieblok 2 rozwiązanie zadań poprawionaKraj SEJM NIE ROZWIĄZANYZARZĄDZANIE FINANSAMI cwiczenia zadania rozwiazaneERozwiązanie umowy o pracę za wypowiedzeniemPOPRAWIONE RYSUNKI WAŁ A4Headache Instant Headache Cure06 Zadania z rozwiązaniamiidd47więcej podobnych podstron