opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab02 (A2007)
1
RELACYJNE BAZY DANYCH
laboratorium 2 – tabele
Wstęp
Celem ćwiczenia jest poznanie zasad projektowania tabel, czyli podstawowych obiektów
w relacyjnych bazach danych. W tabelach przechowywane są dane. Od tego, czy tabele
zostaną zbudowane w sposób poprawny (zgodnie z takimi zasadami jak normalizacja czy
unikanie redundancji danych) i przemyślany (w zależności od domeny, której dotyczy) zależy
późniejsza bezproblemowa eksploatacja bazy.
Projektowanie tabel zawiera się w kilku krokach:
−
określenie niezbędnej liczby tabel,
−
ustalenie liczby pól dla każdej z tabeli i nazwanie ich,
−
ustalenie typów danych dla każdego z pól,
−
identyfikacja pól-kluczy dla każdej z tabel.
Ćwiczenie 1
W tym ćwiczeniu utworzymy zestaw tabel niezbędnych do zbudowania bazy danych
wspomagającej bibliotekę. Wymagane na tym etapie funkcjonalności to ewidencja książek oraz
ewidencja czytelników.
A zatem:
1.
Otwórz MS Access i stwórz nowy plik bazy danych o nazwie Biblioteka.mdb
2.
Utwórz projekty tabel według wytycznych jak niżej:
Tabela KSIAZKA
W tej tabeli przechowywane będą dane o książkach dostępnych w bibliotece.
Klucz
Nazwa
Typ danych
Rozmiar
Atrybuty
Sygnatura
Autonumer
Tytul
Tekst
255
wymagane: tak
Autor_Nazwisko
Tekst
30
wymagane: tak
Autor_Imie
Tekst
20
wymagane: tak
Gatunek
Tekst
30
wymagane: tak
Rok_wydania
Liczba
Całkowita
Wydawnictwo
Tekst
50
Miejsce_wydania
Tekst
30
Cena
Waluta
reguła spr. poprawności: >0
miejsca dziesiętne: 2
Jezyk
Tekst
5
wartość domyślna: "polski"
Opis
Nota
Okladka
Obiekt OLE
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab02 (A2007)
2
Tabela CZYTELNIK
Tu wprowadzane będą dane teleadresowe czytelników
Klucz
NAZWA
Typ danych
Rozmiar
Atrybuty
ID
Autonumer
Czytelnik_Nazwisko
Tekst
30
wymagane
Czytelnik_Imie
Tekst
20
wymagane
Adres
Tekst
50
wymagane
Telefon
Tekst
9
maska wprowadzania
Typ_czytelnika
Tekst
9
Wydzial
Tekst
3
Rok_studiow
Liczba
Bajt
Data_zapisu
Data/Godzina
format: Data krótka
wartość domyślna: Date ()
W projekcie tabeli CZYTELNIK w polu Telefon definiujemy maskę wprowadzania:
−
wybieramy przycisk kreatora masek:
−
wybieramy szablon Numer telefonu
−
wybieramy znak maski
Wyjaśnienie użytych symboli (więcej: [1] s. 117, [3] s. 30-31, [7]):
!
wyrównanie tekstu do lewej
\
wyświetlenie w masce znaku po ukośniku
0
musi być zastąpione dowolną cyfrą
9
może być zastąpiona dowolną cyfrą lub spacją, ale nie musi.
Można wprowadzić ręcznie maskę, uwzględniającą opcjonalny telefon kierunkowy:
!\ (99\) 900\- 00\- 00
Nadaj dla wszystkich pól Tytuły. Tytuł nie musi być taki sam jak nazwa pola – może zawierać
polskie znaki oraz spacje. Co jest wyświetlane w widoku arkusza danych tabeli: nazwa pola cz
tytuł?
3.
Pobierz ze strony
http://www.zie.pg.gda.pl/zzti/dydaktyka_podstawy_relacyjnych_baz_danych.htm
pliki .xls (format MS Excel) o nazwach takich, jak utworzone tabele; w plikach tych znajdziesz
gotowe dane, które zostaną wprowadzone do tabel poprzez import
−
Zaimportuj dane z plików .xls do tabel w Twojej bazie według poniższej instrukcji:
- Zakładka Dane zewnętrzne -> Ikona MS Excel
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab02 (A2007)
3
- Wybierz opcję Dołącz kopię rekordów do tabeli KSIAZKA
- W pasku u góry wybrać plik ksiazka.xls (oraz później analogicznie czytelnik.xls); Access
powinien poprawnie rozpoznać strukturę pliku dzieląc go na pola
- W następnym kroku Pierwszy wiersz zawiera nagłówki kolumn – pierwszy wiersz zawarty
w pliku .xls stanie się nagłówkiem i nie zostanie zaimportowany jako rekord.
- Nie zaznaczaj opcji jak niżej – nie chcemy by kreator cokolwiek za nas analizował!
−
Nie korzystaj z proponowanej opcji zapisywania kroków importowania
−
Sprawdź działanie zdefiniowanych w tabelach reguł poprawności – dodaj „ręcznie” do każdej
z tabel w widoku arkusza danych 3-5 rekordów
4.
Pobierz ze wskazanej strony WWW plik FILIA.xls; zaimportuj go do Twojej bazy danych do
nowej tabeli, nadaj jej nazwę FILIA. Sprawdź jakie Access przydzielił typy danych dla
poszczególnych pól oraz jakie ustawił na nich atrybuty
W trakcie importu pozwól Accessowi nadać klucz podstawowy
Czy można było w tym przypadku wybrać własny klucz podstawowy?
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab02 (A2007)
4
5.
Wprowadź dla tabeli FILIA ustawienia według poniższych wytycznych
Tabela FILIA
Klucz
NAZWA
Typ danych
Rozmiar
Atrybuty
ID
Autonumer
Nr_filii
Liczba
Bajt
wymagane
Wydzial
Tekst
3
wymagane
Liczba_stanowisk_czyt
Liczba
Bajt
Liczba_woluminow
Liczba
Całkowita
Godz_otwarcia
Nota
Telefon
Liczba
maska wprowadzania
Ksero
Tak/Nie
wartość domyślna: "TAK"
Wypozyczanie
Tak/Nie
wartość domyślna: "TAK"
Zauważ, że próba ustawienia maski nie udaje się przy typie pola Liczba. Zmień typa pola na taki
by było to możliwe. Czy przy zmianie typów danych wszystkie wartości w polach zostały
zachowane?
6.
Spróbuj na polach tabeli FILIA dokonać następujących zmiany typów danych:
- Liczba -> Tekst
- Nota -> Tekst
- Liczba -> Tak/Nie
- Tak/Nie -> Tekst
- Tak/Nie -> Liczba
W których sytuacjach konwersja wymaga usunięcia jakichkolwiek danych (Access wyświetla
odpowiednie ostrzeżenie!)? Nie konwertuj danych, jeśli grozi to ich utratą!
7.
Dodaj do tabeli CZYTELNIK dwa pola: pierwsze wg wytycznych poniżej, natomiast drugie to
numer jego Gadu-Gadu
Klucz NAZWA
Typ danych
Rozmiar
Atrybuty
Aktywny
Tak/Nie
wartość domyślna: "TAK"
Wypełnij oba pola dla wybranych rekordów wartościami według uznania
Ćwiczenie 2
Celem ćwiczenia jest nabycie umiejętności samodzielnej analizy wymagań funkcjonalnych bazy
danych. Poniżej w kilku zdaniach przedstawione zostały wymagania przyszłego użytkownika
bazy danych. Wymagania wyrażone są w języku naturalnym, stąd mogą być nieprecyzyjne.
Zbuduj tabelę (lub kilka tabel), która zapewni poprawne wprowadzanie oraz przetwarzanie
danych do niej wprowadzanych. Ustaw odpowiednie atrybuty.
−
Biblioteka przechowuje także multimedia, baza danych powinna dawać możliwość
przechowywania o nich danych
−
Multimedia mamy na różnych nośnikach – na płytach CD, DVD a nawet na kasetach
−
Są to zarówno filmy, audiobooki jak i utwory muzyczne
−
Większość pozycji jest zabezpieczona przed kopiowaniem
−
W przypadku filmów przydałoby się mieć dostęp do informacji o tym, czy są napisy i/lub
lektor
−
Istotną informacją jest długość nagrania
−
Niektórych pozycji nie można wypożyczyć – dostęp do nich jest możliwy wyłącznie w czytelni
−
Ważne jest by system nie pozwolił osobie wprowadzającej dane wprowadzić pozycji bez
podania informacji o języku; wystarczą 3 litery np. POL, ANG (wyświetlanie jako wielkie
litery)
−
Jeśli się da, to dobrze byłoby dysponować okładką danej pozycji
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab02 (A2007)
5
Porównaj stworzony przez Ciebie projekt tabeli z efektem pracy innych osób z grupy,
przeanalizujcie różnice w podejściu do powyższych wytycznych.
Literatura
[1]
Cary N. Prague, Michael R. Irvin, Jennifer Reardon. Access 2003 PL. Biblia. Helion.
Gliwice, 2004, s. 84-164.
[2]
Kopertowska M. Europejski Certyfikat Umiejętności Komputerowych. Bazy Danych.
Wydawnictwo Naukowe PWN. Wydanie III zmienione. Warszawa, 2007. s. 30-41.
[3]
Kopertowska M., Sikorski W. Europejski Certyfikat Umiejętności Komputerowych.
Poziom zaawansowany. Bazy Danych. Wydawnictwo Naukowe PWN. Warszawa, 2006.
s. 8-35.
[4]
http://office.microsoft.com/pl-pl/access/CH062526461045.aspx
[5]
http://office.microsoft.com/pl-pl/access/HP052753941045.aspx
[6]
http://office.microsoft.com/pl-pl/access/HP030839281045.aspx
[7]
http://office.microsoft.com/pl-pl/access/HP051875501045.aspx