opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab01 (A2007)
1
RELACYJNE BAZY DANYCH
laboratorium 1 – wiadomości wstępne
Co to jest baza danych?
Baza danych to zbiór informacji i obiektów dotyczących określonego tematu czy zastosowania
biznesowego. [1, s. 52]
Do organizowania danych w bazach, ich dodawania, modyfikowania, prezentowania czy
usuwania niezbędny jest System Zarządzania Bazami Danych (SZBD) (ang. DataBase
Management System – DBMS).
Microsoft Office Access (dawniej: Microsoft Access) jest systemem zarządzania relacyjnymi
bazami danych.
- widok arkusza danych
- widok projektu
Idea relacyjnych baz danych
W bazach relacyjnych wiele tablic danych może współpracować ze sobą (są między sobą
powiązane). Bazy relacyjne posiadają wewnętrzne języki programowania, wykorzystujące
zwykle SQL do operowania na danych, za pomocą których tworzone są zaawansowane funkcje
obsługi danych. Relacyjne bazy danych (jak również przeznaczony dla nich standard SQL)
oparte są na kilku prostych zasadach [2]:
1.
Wszystkie wartości danych oparte są na prostych typach danych.
2.
Wszystkie dane w bazie relacyjnej przedstawiane są w formie dwuwymiarowych tabel
(w matematycznym żargonie noszących nazwę "relacji"). Każda tabela zawiera zero lub
więcej wierszy (zwanych także "krotkami") i jedną lub więcej kolumn ("atrybutów"). Na
każdy wiersz składają się jednakowo ułożone kolumny wypełnione wartościami, które z kolei
w każdym wierszu mogą być inne.
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab01 (A2007)
2
3.
Po wprowadzeniu danych do bazy, możliwe jest porównywanie wartości z różnych kolumn,
zazwyczaj również z różnych tabel, i scalanie wierszy, gdy pochodzące z nich wartości są
zgodne. Umożliwia to wiązanie danych i wykonywanie stosunkowo złożonych operacji
w granicach całej bazy danych.
4.
Wszystkie operacje wykonywane są w oparciu o algebrę relacji, bez względu na położenie
wiersza tabeli. Wiersze w relacyjnej bazie danych przechowywane są w porządku zupełnie
dowolnym - nie musi on odzwierciedlać ani kolejności ich wprowadzania, ani kolejności ich
przechowywania.
5.
Z braku możliwości identyfikacji wiersza przez jego pozycję pojawia się potrzeba obecności
jednej lub więcej kolumn niepowtarzalnych w granicach całej tabeli, pozwalających odnaleźć
konkretny wiersz. Kolumny te określa się jako "klucz podstawowy" (ang. primary key)
tabeli.
Typy danych
W relacyjnych bazach danych wyróżniamy różne typy przechowywanych danych. Microsoft
Access 2007 oferuje następujące typy danych [1, s. 100]:
Typ danych
Typ przechowywanych danych
Rozmiar przechowywanych danych
Tekst
Znaki alfanumeryczne
0-255 znaków
Nota
Znaki alfanumeryczne
0-65536 znaków
Liczba
Wartości liczbowe
Bajt: liczby całkowite 0-255
Dziesiętne: od -10
28
– 1 do 10
28
– 1
Liczba całkowita: od -32 768 do 32767
Liczba całkowita długa: od -
2 147 483 648 do 2 147 483 647
Pojedyncza precyzja: liczby od
3,402823e38 do -1,401298e-45
Podwójna precyzja: liczby z przedziału -
1,79769313486231e308 do -
4,94065645841247e-324 w przypadku
liczb ujemnych oraz od
4,94065645841247e-324 do
1,79769313486231e308
Replication Id:16-bajtowa, unikatowa w
skali globalnej liczba szesnastkowa
Data/Godzina
Data oraz czas
8 bajtów
Walutowy
Wartości pieniężne
8 bajtów
Autonumerowanie
Liczba zwiększana automatycznie
4 bajty, 16 bajtów dla identyfikatora
replikacji (GUID)
Tak/Nie
Wartości logiczne: Tak/Nie,
Prawda/Fałsz
1 bit (0 lub -1)
Obiekt OLE
Zdjęcia, rysunki, dźwięki, pliki
filmowe
Do 1 GB (oraz ograniczenie wielkością
dysku)
Hiperłącze
Łącze do zasobu internetowego
0-64000 znaków
Kreator odnośników
Wyświetla dane z innej tabeli
Ogólnie 4 bajty
Podstawowe pojęcia
−
Tabele – podstawowe obiekty bazy danych w programie Access służące do przechowywania
danych. Składają się one z wierszy (rekordów) i kolumn (pól).
−
Relacja – skojarzenie ustanowione między wspólnymi polami (kolumnami) w dwóch
tabelach. Relacja może być typu „jeden-do-jednego”, „jeden-do-wielu” lub „wiele-do-wielu”.
Relacja działa poprzez dopasowywanie danych w polach klucza.
−
Klucz podstawowy - jedno lub większa liczba pól (kolumn), których wartości jednoznacznie
identyfikują każdy rekord w tabeli. Klucz podstawowy służy do wiązania tabeli z kluczami
obcymi w innych tabelach.
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab01 (A2007)
3
−
Klucz obcy - jedno lub większa liczba pól tabeli (kolumn), które odwołują się do pola lub pól
klucza podstawowego w innej tabeli. Klucz obcy wskazuje, w jaki sposób tabele są
powiązane.
−
Kwerendy – wyrażone w formalnym języku „zapytania” do bazy danych, które – zależnie od
typu – mogą wyświetlać określone dane, modyfikować je, tworzyć lub usuwać. Kwerendy
pozwalają automatyzować operacje na bazach danych.
−
Formularze – elementy interfejsu SZBD, za pomocą których użytkownik może przeglądać
i modyfikować przechowywane w tabelach dane, uruchamiać raporty czy wykonywać zadania
administracyjne.
−
Raporty – pozwalają na wyświetlanie oraz drukowanie sformatowanych danych wraz
z obliczeniami oraz podsumowaniami.
−
Strony – pozwalają na publikowanie interaktywnych formularzy w sieci lokalnej
−
Makra (Makropolecenia) – grupy poleceń, które mogą zostać automatycznie wykonane jak
jedna instrukcja.
−
Moduły – pozwalają na tworzenie programów w języku VBA (Visual Basic for Applications).
Organizacja danych w tabeli
Dane w relacyjnych bazach danych zapisywane są w tabelach. Każda tabela składa się z pół
(czyli jej nagłówków) oraz rekordów (czyli wierszy).
Rekord to logicznie wyodrębniony zestaw informacji związany z jednym konkretnych obiektem
(np. dane teleadresowe jednej osoby).
Ewolucja MS Access
MS Access w wersji 1.0 pojawił się w roku 1992. Wersja ta oraz kolejna 1.1 były
programami samodzielnymi. W roku 1994 Access stał się składnikiem pakietu
Office (wersja 4.X). Kolejne wersje to Access 95 i 97 będące składnikami
pakietów Office o takich samych oznaczeniach.
1997
2000
2002
2003
2007
POLA
R
E
K
O
R
D
Y
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab01 (A2007)
4
Ewolucji uległ też format zapisu danych przez MS Access. Do wersji 2003 włącznie domyślnym
rozszerzeniem plików baz danych było .mdb. W wersji 2007 pliki domyślnie zapisywane są
z rozszerzeniem .accdb. Access 2007 zachował oczywiście kompatybilność wstecz, czyli możemy
w nim otworzyć i edytować pliki utworzone w starszych wersjach programu, możemy także
nowym plikom nadawać rozszerzenie .mdb (zalecane).
Oprócz plików z tymi rozszerzeniami Access obsługuje także następujące formaty plików:
.mde
– Zabezpieczona baza danych z makrami (wersja 2003 i wcześniejsze)
.mam – Makro Accessa
.maq
– Kwerenda Accessa
.mar
– Raport Accessa
.mat
– Tabela Accessa
.maf
– Formularz Accessa
.adp
– Projekt Accessa
.adn
– Szablon pustego projektu Accessa
Porównanie wersji Office 2007
Program Access jest składnikiem pakietu Microsoft Office. Uwaga – Access nie znajduje się
w każdej wersji pakietu! Firma Microsoft prowadzi politykę różnicowania Office’a dla różnych
użytkowników
poprzez
dodawanie
niektórych
składników
w
wersjach
biznesowych,
a ograniczanie ich w wersjach przeznaczonych do pracy w domu. Poniższa tabela jest
porównaniem obecnie dostępnych na rynku pakietów Office 2007.
Źródło:
http://office.microsoft.com
opracowanie: mgr inż. Adam Czarnecki, mgr inż. Tomasz Sitek, mgr inż. Artur Ziółkowski
lab01 (A2007)
5
Uwaga! Jeżeli na danym komputerze zainstalowany jest pakiet Office w wersji Professional lub
wyższej nie oznacza to jeszcze, iż na tej maszynie znajdziesz program Access. Podczas instalacji
istnieje możliwość wyboru jedynie pożądanych składników, inne można pominąć.
W takiej sytuacji można zawsze doinstalować brakujące komponenty poprzez uruchomienie
programu instalacyjnego z oryginalnej płyty MS Office.
Literatura
[1]
Cary N. Prague, Michael R. Irvin, Jennifer Reardon. Access 2003 PL. Biblia. Helion.
Gliwice, 2004
[2]
http://pl.wikipedia.org/wiki/Baza_danych
[3]
http://office.microsoft.com/pl-pl/access/default.aspx
Ćwiczenia
Celem ćwiczenia jest zapoznanie z interfejsem programu Access oraz z zasadami
obowiązującymi zarówno w czasie projektowania bazy danych, jak i jej późniejszego
użytkowania.
Analizując bazę Northwind odpowiedz na poniższe pytania. Nic nie zmieniaj w bazie, żadne
z pytań tego nie wymaga!
1.
Ile tabel zawiera ta baza?
2.
Ile pól zawiera tabela Spedytorzy?
3.
Ile rekordów zawiera tabela Dostawcy?
4.
Ile maksymalnie znaków może mogą mieć dane wpisywane do pola Stanowisko w tabeli
Pracownicy?
5.
W widoku arkusza danych załóż taki filtr na polu Kategoria tabeli Produkty, który wyświetli
tylko rekordy mające wartość Przyprawy w tym polu; ile jest takich rekordów?
6.
W widoku arkusza danych tabeli Opisy zamówień posortuj malejąco pole Cena jednostkowa;
jaka największa wartość znajduje się w tym polu?
7.
Jakiego typu relacje między tabelami zastosowano w tej bazie (1-do-wielu? 1-do-1? Wiele-
do-wielu?)
8.
Przyjrzyj się dowolnej tabeli, która jest w relacji jeden-do-wielu z innymi tabelami. Jakie
dane widać w widoku arkusza danych po rozwinięciu symbolu [+] dla wybranego rekordu?
9.
Czy wszystkie tabele mają ustalone pola-klucze?
10.
Czy z któraś z tabel ma klucz podwójny?
11.
Jakie pola łączy relacja między tabelami Pracownicy i Zamówienia?
12.
Jaka reguła sprawdzania poprawności została ustawiona na polu DataUrodzenia w tabeli
Pracownicy? Co taki zapis oznacza?
13.
Czy pole DataUrodzenia w tabeli Pracownicy ma jakąś wartość domyślną?
14.
Z ilu tabel korzysta kwerenda Faktury?
15.
Uruchom widok projektu kwerendy Klienci i dostawcy wg miast i porównaj go z widokiem
projektu dowolnej innej kwerendy; na czym polega różnica?
16.
Ile stron zawiera raport Faktura?
17.
Za pomocą jakiej formuły uzyskano w raporcie Alfabetyczna lista produktów numerowanie
stron w takim formacie jaki widnieje na wydruku (np. Strona 1 z 4)?
18.
Który formularz uruchamia się w trybie autostartu bazy Northwind?
19.
Który obiekt w bazie Northwind został utworzony jako pierwszy?
20.
Sprawdź lokalizację pliku Northwind.mdb