access st2008z lab03 relacje normalizacja


opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
RELACYJNE BAZY DANYCH
laboratorium 3  relacje, normalizacja
Wstęp
Znajomość reguł projektowania tabel nie jest wystarczająca, by zbudować z nich
poprawną i wydajną bazę danych. Konieczna jest umiejętność projektowania
relacji między tabelami. Relacje pozwalają powiązać w taki sposób tabele, by móc łatwo
uzyskiwać dane na konkretny temat, nawet jeśli te dane  rozrzucone są w większej ilości tabel.
Istotne jest także, aby tak projektować dane, by unikać ich niepotrzebnego powtarzania. Taki
nadmiar danych nazywa się redundancją i prowadzi w pewnej perspektywie czasowej do
trudności z zarządzaniem nimi. Ma to także mierzalny skutek  baza danych zawierająca
zdublowane wpisy zajmuje więcej miejsca i jest wolniejsza. Stąd jeszcze przed wprowadzeniem
jakichkolwiek danych tabele muszą zostać poddane takiemu procesowi. Nazywa się to
normalizacją tabel.
We wstępie do poprzedniego ćwiczenia określone zostały kroki prowadzące do zaprojektowania
zestawu tabel w bazie danych. Na tym etapie można dopisać kolejne punkty:
- ustalenie relacji między tabelami,
- analiza tabel pod kątem powtarzalności (redundancji) danych,
- wyodrębnienie powtarzających się danych i stworzenie osobnych tabel (tzw. słownikowych),
- stworzenie relacji między tabelą główną a tabelami słownikowymi.
Ćwiczenie 1
1. Otwórz tabelę CZYTELNIK w swojej bazie danych w widoku arkusza danych
2. Przeanalizuj ja pod kątem powtarzanych danych. Przykładowe dane, które się powtarzają,
pokazano poniżej
Co by się stało gdyby Wydział Zarządzania Ekonomii zmienił nazwę, a co za tym idzie, skrót
ZIE? Co trzeba by zrobić, chcąc zachować poprawność danych?
3. Stwórz tabelę o nazwie WYDZIAL według wytycznych jak niżej:
Klucz Nazwa Typ danych Rozmiar Atrybuty
ID Autonumer
Akronim Tekst 3 wymagane: tak
Wydzial Tekst 50 wymagane: tak
Wprowadz w widoku arkusza danych tej tabeli znane Ci wydziały Politechniki Gdańskiej. W polu
Akronim użyj takich trzyliterowych skrótów, jakie występują w tabeli CZYTELNIK. Zauważ, że
każdy wydział otrzymał w polu ID swój unikatowy numer. Jest pole-klucz.
lab03 (A2007) 1
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
Czy można było użyć pola Akronim do tego celu? Kiedy można by było tak zrobić, a kiedy nie?
4. Otwórz tabelę CZYTELNIK i zamień wartości w polu Wydzial na odpowiednią dla danego
wydziału wartość ID nadaną w nowo stworzonej tabeli. W kroku drugim zmień typ danych
ustawiony na tym polu z Tekst na Liczba (całkowita).
Jeśli taka zamiana danych nie jest możliwa w sposób ręczny (edytując kolejne rekordy),
można użyć opcji Znajdowania i Zamieniania (skrót klawiaturowy: CTRL-H).
Uwaga! Cofnięcie takiej operacji zamiany nie będzie możliwe, więc zalecane jest w takich
przypadkach stworzenie kopii bazy danych.
Co by się stało, gdyby te operacje zostały przeprowadzone w odwrotnej kolejności  tzn.
najpierw konwersja danych tekst->liczba, a potem edycja danych w arkuszu?
5. Stwórz tabelę o nazwie OSOBA_STATUS według wytycznych jak niżej:
Klucz Nazwa Typ danych Rozmiar Atrybuty
ID Autonumer
Status Tekst 10 wymagane: tak
Wprowadz w widoku arkusza danych tej tabeli dwa rekordy  jeden dotyczący studenta, drugi 
pracownika.
Analogicznie jak w punkcie poprzednim, zamień w tabeli CZYTELNIK wartości tekstowe na Liczby
odpowiadające ID z tabeli OSOBA_STATUS.
Czy widzisz w tej tabeli inne dane, które można by poddać procesowi normalizacji?
6. Otwórz tabelę FILIA. Przeanalizuj jej zawartość pod kątem normalizacji i zrób odpowiednie
poprawki. Wskazówka: jest jedno pole, które musi zostać poddane zmianom.
7. Ustal wszystkie możliwe relacje między tabelami w swojej bazie danych. W tym celu kliknij
ikonę na pasku narzędzi:
- Dodaj swoje wszystkie tabele
lab03 (A2007) 2
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
- Ustal wszystkie możliwe relacje między odpowiednimi polami. W tym celu przeciągnij
kursor od jednego pola do drugiego, trzymając wciśnięty lewy klawisz myszy. Access
wyświetli następujące okno:
- Włącz opcję Wymuszaj więzy integralności.
- W przypadku powiązania tabel CZYTELNIK i OSOBA_STATUS Access utworzył relację typu
jeden-do-wielu. Dlaczego? Jak to zinterpretować?
- Utwórz wszystkie pozostałe relacje (Jakiego są typu?). Możesz też, zamiast okna relacji,
skorzystać z kreatora odnośników dostępnego na liście typów danych w widoku
projektowania tabeli:
lab03 (A2007) 3
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
8. Stwórz nową tabelę o nazwie WYPOZYCZENIA według wytycznych jak niżej:
Klucz Nazwa Typ danych Rozmiar Atrybuty
Ksiazka_Sygnatura Liczba całkowita długa
Czytelnik_ID Liczba całkowita długa
Data_wypozyczenia Data/godzina data krótka wartość domyślna: Date()
Data_oddania Data/godzina data krótka
Zauważ, że zgodnie z powyższą specyfikacją żadne pole w tabeli nie będzie mieć ustalonego
atrybutu Wymagane=TAK. Dlaczego?
9. Otwórz ponownie widok relacji, dodaj tabelę WYPOZYCZENIA i ustal odpowiednie relacje.
Wskazówka: dla tej tabeli trzeba ustalić relacje z dwiema tabelami.
Ćwiczenie 2
Na poprzednim laboratorium ćwiczenie drugie dotyczyło samodzielnego stworzenia tabeli
MULTIMEDIA. Przyjrzyj się tej tabeli  czy jest ona zgodna z zasadami normalizacji? Jeśli nie
jest  określ potrzebne zmiany. Czy wystarczy do tego jedna tabela? Jeśli nie  stwórz
odpowiednią liczbę niezbędnych tabel (słownikowych) i ustal odpowiednie relacje.
Literatura
[1] Cary N. Prague, Michael R. Irvin, Jennifer Reardon. Access 2003 PL. Biblia. Helion.
Gliwice, 2004, s. 165-190.
[2] Kopertowska M. Europejski Certyfikat Umiejętności Komputerowych. Bazy Danych.
Wydawnictwo Naukowe PWN. Wydanie III zmienione. Warszawa, 2007. s. 20-21, 32, 46-50.
[3] Kopertowska M., Sikorski W. Europejski Certyfikat Umiejętności Komputerowych.
Poziom zaawansowany. Bazy Danych. Wydawnictwo Naukowe PWN. Warszawa, 2006.
s. 36-44.
[4] http://office.microsoft.com/pl-pl/access/HP051884441045.aspx
[5] http://office.microsoft.com/pl-pl/access/HP051875301045.aspx
[6] http://office.microsoft.com/pl-pl/access/HP051875241045.aspx
lab03 (A2007) 4


Wyszukiwarka

Podobne podstrony:
access st2008z lab02 tabele
access st2008z lab01 podstawy
access st2008z lab04 projektowanie?zy
Normalizer Form
ImageIcon AccessibleImageIcon
4 Relacja człowiek środowisko
JCheckBoxMenuItem AccessibleJCheckBoxMenuItem
AccessibleStreamable
Access 10 PL cwiczenia praktyczne cwac10
Tablice Dystrybuanta rozkładu normalnego
JCheckBox AccessibleJCheckBox
Relacja
Microsoft PowerPoint 04 algebra relacji i rachunek relacyjny

więcej podobnych podstron