RELACYJNE BAZY DANYCH Pomoc dydaktyczna do nauczania Technologii Informacyjnej i Informatyki opracowanie Marta Kramek I. E LEMENTY TEORII BAZ DANYCH  Podstawowe pojęcia  Struktura tabeli (elementy)  Uwagi do projektowania  Anomalia przy.

Download Report

Transcript RELACYJNE BAZY DANYCH Pomoc dydaktyczna do nauczania Technologii Informacyjnej i Informatyki opracowanie Marta Kramek I. E LEMENTY TEORII BAZ DANYCH  Podstawowe pojęcia  Struktura tabeli (elementy)  Uwagi do projektowania  Anomalia przy.

RELACYJNE BAZY DANYCH
Pomoc dydaktyczna do nauczania
Technologii Informacyjnej i Informatyki
opracowanie Marta Kramek
I.
E LEMENTY
TEORII BAZ DANYCH

Podstawowe pojęcia

Struktura tabeli (elementy)

Uwagi do projektowania

Anomalia przy projektowaniu

Normalizacja tabeli
NR 2
II.
P ODSTAWOWE
POJĘCIA
Baza danych – zbiór różnego typu danych (liczbowe, tekstowe, graficzne)
powiązanych ze sobą i przechowywanych na urządzeniach
pamięciowych
Tabela (relacja) – obiekt bazy danych przechowujących informacje
przeznaczone do przetwarzania (definicja nieformalna)
Relacyjna baza danych – system powiązanych ze sobą tabel (relacji)
<<
NR 3
III.
S TRUKTURA
TABELI
struktura (schemat) tabeli – zbiór pól i przypisanych im własności
pole = atrybut = kolumna
rekord = wiersz = krotka
Tabela 1: Wypożyczalnia biblioteczna
PESEL
NAZWISKO
IMIONA
DATA I MIEJSCE UR.
ADRES
TYTUŁ
AUTOR
CENA
DATA
WYPOŻYCZENIA
DATA
ZWROTU
1111111111 Kot
Ew a, Anna
85-12-01 Radom
26-900 Radom Krótka 125
Chłopi
Reymont Stanisław
14,50 zł
02-09-16
02-09-16
1111111111 Kot
Ew a, Anna
85-12-01 Radom
26-900 Radom Krótka 125
Opow iadania
Orzeszkow a Eliza
12,00 zł
99-08-01
99-08-01
2222222222 Lis
Anna
56-02-01 Radom
25-900 Puław y Szara 10/4
Lalka
Prus Bolesław
25,00 zł
99-06-01
99-06-01
2222222222 Lis
Anna
56-02-01 Radom
25-900 Puław y Szara 10/4
Opow iadania
Orzeszkow a Eliza
12,00 zł
95-06-11
95-06-11
3333333333 Pusek
Jan
56-12-01 Kielce
36-660 Kielce Zielona 1A
Chłopi
Reymont Stanisław
14,50 zł
03-09-08
03-09-08
3333333333 Pusek
Jan
56-12-01 Kielce
36-660 Kielce Zielona 1A
Lalka
Prus Bolesław
30,00 zł
00-09-16
00-09-16
4444444444 Kow al
Stanisław
84-05-01 Warszaw a
26-500 Opole Biała 100
Opow iadania
Orzeszkow a Eliza
12,00 zł
99-06-01
99-06-01
4444444444 Kow al
Stanisław
84-05-01 Warszaw a
26-500 Opole Biała 100
Chłopi
Reymont Stanisław
14,50 zł
95-06-11
95-06-11
5555555555 Król
Anna
70-04-22 Iłża
55-500 Poznań Miła 12/5
Opow iadania
Orzeszkow a Eliza
17,00 zł
03-09-08
03-09-08
6666666666 Kot
Ew a, Maria
85-12-01 Kielce
36-660 Kielce Puław ska 11
Chłopi
Reymont Stanisław
34,50 zł
99-06-01
99-06-01
6666666666 Kot
Ew a, Maria
85-12-01 Kielce
36-660 Kielce Puław ska 11
Opow iadania
Orzeszkow a Eliza
12,00 zł
95-06-11
95-06-11
1111111111 Kot
Ew a, Anna
85-12-01 Radom
26-900 Radom Krótka 125
Lalka
Prus Bolesław
25,00 zł
02-09-16
02-09-16
<<
NR 4
IV. U WAGI
DO PROJEKTOWANIA
•
Nie ma znaczenia kolejność kolumn w tabeli,
•
Nie ma znaczenia kolejność wierszy (rekordów),
•
Na przecięciu wiersza i kolumny powinna znajdować się,
tylko jedna wartość z dziedziny danego atrybutu (pola),
•
Ten sam wiersz nie powinien występować więcej niż
jeden raz,
•
Tabela powinna posiadać zbiór atrybutów (pól),
jednoznacznie identyfikujących wiersz;
tabela musi mieć klucz.
<<
NR 5
V. A NOMALIA
1.
PRZY PROJEKTOWANIU
Redundancja – nadmiarowość informacji
(niepotrzebne powtarzanie informacji w tabelach,
wzrost objętości plików).
2. Anomalia przy aktualizacji rekordów (liczba
uaktualnień).
3. Anomalia przy usuwaniu rekordów (liczba usunięć).
4. Anomalia przy wstawianiu rekordów. (konieczność
wpisywania wartości do pól zamiast wybrania wartości
klucza).
<<
NR 6
VI.
N ORMALIZACJA
TABELI
Aby doprowadzić tabelę do odpowiedniej postaci normalnej
przeprowadza się proces normalizacji tabeli.
Proces normalizacji polega na odpowiednim podziale tabeli na
mniejsze w wyższej postaci normalnej.
W naszym przykładzie w wyniku ww. procesu otrzymamy cztery
tabele:
1. Czytelnicy { PESEL, nazwisko, imię, data_ur, miejsce_ur, nr_dowodu}
2. Adresy czytelników { PESEL, kod, miasto, ulica, telefon }
3. Książki {ID_książki, tytuł, autor, cena, rok_wydania, recenzja}
4. Rejestr wypożyczeń {Nr_op, PESEL, ID_książki, Data_wyp, Data_zwrotu},
<<
NR 7
TABELE
BAZY DANYCH ( P O
N O R M A L I Z A C J I TA B E L I
W YPOŻYCZALNIA)
Tabele: Czytelnicy, Adresy
Tabela nr 1 „Czytelnicy”
PESEL
NAZWISKO
IMIĘ I
IMIĘ II
DATA UR.
MIEJCSE UR
NR DOWODU
1111111111
Kot
Ewa
Anna
01-05-1980
Radom
AB 2558141
1012602222
Lis
Jan
Józef
10-12-1960
Kielce
DD 2546369
3333333333
Nowak
Anna
Ada
13-07-1966
Radom
BD 2657879
1012604444
Lis
Jan
Adam
10-12-1960
Kielce
DD 3566123
Tabela nr 2 „Adresy”
PESEL
KOD
MIASTO
ULICA
TELEFON
1111111111
26-600
Radom
Krótka 10/3
(048) 36-251-30
1012602222
30-600
Kielce
Biała 12/25
(041) 26-251-30
3333333333
26-606
Radom
Miła 123
(048) 66-540-41
1012604444
30-700
Kielce
Zielona 11
(041) 80-251-30
<<
NR 8
TABELE
BAZY DANYCH ( P O
N O R M A L I Z A C J I TA B E L I
W YPOŻYCZALNIA)
Tabele: Książki, Rejestr wypożyczeń
Tabela nr 3 „Książki”
ID KSIĄŻKI
TYTUŁ
ID_AUTORA
CENA
ROK_WYD
RECENZJA
111111
Lalka
1
25,50 zł
1945
Powieść ....
222222
Chłopi
2
45,00 zł
1999
Nagroda Nobla ..
333333
Wiersze
1
30,50 zł
1985
Zbiór wierszy ...
Tabela nr 4 „Rejestr wypożyczeń”
PESEL
ID KSIĄŻKI
DATA_WYPOŻYCZENIA
DATA ZWROTU
1111111111
111111
01-02-2002
1111111111
111111
11-12-2003
1012602222
222222
10-11-2003
11-02-2004
1012602222
333333
11-05-2002
25-11-2003
<<
NR 9
01-08-2002
VIII.E LEMENTY
1.
2.
3.
4.
STRUKTURY TABELI
Pola tabeli
Typy pól
Właściwości pól
Klucz - jeden lub kilka pól, które jednoznacznie identyfikują
rekord
- Klucz prosty – jednoatrybutowy
- Klucz złożony – wieloatrybutowy
W tabeli może istnieć wiele kluczy (indeksów), ale jest tylko
jeden klucz główny, podstawowy.
NR 10
A D .2 T YPY
•
tekstowe
- długość tekstu do 255 znaków
•
Nota
- tekst o długości do 65 536 znaków
•
liczbowe
- (bajt, całkowite, zmiennoprzecinkowe ...)
PÓL
Bajt
- od 0 do 255
1 bajt
Liczba całkowita
- 32.768 do 32.767
2 bajty
Liczba całkowita długa
-2.147.483.648 do 2.147.483.647
4 bajty
Pojedyncza precyzja
–3.402823E38 do –1.401298E–45 7 m. po p.
4 bajty
Podwójna precyzja
–1.79769313486231E308 –4.94065645841247E–324
15 m.p.p 8 bajtów
•
data / godzina
•
waluta
•
autonumer
- unikatowy, kolejny numer nadawany przez program MS Access
•
Tak / Nie
- pole logiczne)
•
obiekt OLE
- obiekty typu: arkusz kalkulacyjny, dokument Word, grafika, dźwięki ...
NR 11
1 bit
A D .3 W ŁAŚCIWOŚCI
Właściwości pól zależą od wybranego typu pola. Do podstawowych
właściwości należą:
•
wartości domyślne
•
maski wprowadzania
•
formaty wyświetlania
•
reguły poprawności
•
komunikaty o błędach
NR 12
PÓL
A D .3 W ŁAŚCIWOŚCI
Wartości domyślne - ustalają dla nowych rekordów wartość dla
danego pola
Maski wprowadzania
Maska wymusza na użytkowniku wprowadzenie do pola określonych znaków.
Maska może zawierać następujące elementy:
„0”
- cyfra wymagana, znaki + - niedozwolone
„9”
- cyfra niewymagana, znaki + - niedozwolone
„#”
- cyfra lub spacja niewymagana, znaki + - dozwolone
„L”
- litera wymagana
„?”
- litera niewymagana
„\znaki” - wyświetla na stałe dane znaki
„>”
- zamienia na duże litery
„<”
- zamienia na małe litery
„a”
-litera lub cyfra niewymagana
„A”
-litera lub cyfra wymagana
NR 13
PÓL
A D .3 W ŁAŚCIWOŚCI
PÓL
Reguły poprawności
Wyrażenie wymuszające wprowadzenie poprawnej danej do pola.
Typy wyrażeń:
• tekstowe (argumentami są pola tekstowe oraz operatory tekstowe,
np.. & - op. konkatenacji)
• operator LIKE – umożliwia wykorzystanie w wyrażeniach
tekstowych znaków zastępczych *, ?
• operatory porównań : >, <, =, <>, <=, >=, BETWEEN… And…
• operatory logiczne: OR, AND, NOT
Komunikat o błędzie
Jeżeli występuje reguła poprawności, a nie ma „komunikatu” wówczas
w sytuacji jej niespełnienia pojawia się standardowo komunikat MS
Access. Aby wymusić własny komunikat należy go uwzględnić we
właściwościach Npola.
14
R
VII.
RELACJE

Aby powstała relacyjna baza danych musi
powstać system powiązań i sprzężeń między
tabelami – system relacji.

Połączenie między tabelami musi być naturalne
tzn. w obu tabelach musi istnieć wspólne pole
łączące, które będzie:
NR 15

Tego samego typu,

Wartości w obu tabelach będą sobie nawzajem
odpowiadać
X.
R ELACJE
1. 1 – 1 - jeden do jeden.
Każdemu rekordowi w pierwszej tabeli odpowiada tylko 1 rekord
z drugiej i każdemu rekordowi z drugiej tabeli odpowiada tylko
jeden rekord z pierwszej.
2. 1 - ∞ - jeden do wiele.
Każdemu rekordowi w tabeli nadrzędnej odpowiada wiele
rekordów z tabeli podrzędnej i każdemu rekordowi z tabeli
podrzędnej odpowiada tylko 1 rekord z tabeli nadrzędnej.
3. m – n – wiele do wiele.
Każdemu rekordowi w pierwszej tabeli odpowiada wiele rekordów
z drugiej i każdemu rekordowi z drugiej tabeli może odpowiadać
wiele rekordów z pierwszej tabeli. Musi powstać dodatkowa tabela
łącząca, w rzeczywistości powstaną dwie relacje 1 - ∞ - jeden do
wiele.
NR 16
X.
U STALANIE
RELACJI MIEDZY
TABELAMI
NR 17
X.
U STALANIE
RELACJI MIEDZY
TABELAMI
Określanie więzów integralności:
NR 18
K WERENDY
Kwerendy - narzędzia do wybierania rekordów z jednej lub
wielu tabel. Tabele muszą być połączone systemem relacji w
sposób naturalny.
Połączenie naturalne oznacza, że w obydwu tabelach istnieje
pole łączące. Typ pola łączącego musi być ten sam w obydwu
tabelach.
Wartości pola w tabelach muszą sobie odpowiadać.
Inne określenia kwerend to: tabele wirtualne, zapytania,
polecenia języka SQL (Structure Query Language)
NR 19
K LASY
KWEREND
Klasy kwerend
1. Wybierające – wybierają i wyświetlają rekordy z 1 lub wielu
tabel
2. Funkcjonalne:
a)
aktualizujące – zmieniają zawartość pól bazy danych (tabel)
b)
dołączające rekordy – dodają rekordy do 1 lub kilku tabel
c)
usuwające – usuwają rekordy z tabel bazy danych
d)
tworzące nową tabelę
Uwaga!
Nie można odwrócić działania kwerend funkcjonalnych!
NR 20
K WERENDY
CD .
Budowa kwerendy:
1. Wskazać źródło informacji do kwerendy (tabele lub kwerendy)
2. Wybrać odpowiednie pola do zestawienia i umieścić je w siatce
projektowej kwerendy
a)
określić kryteria do selekcji rekordów (wykorzystanie
Konstruktora wyrażeń),
b)
określić własności pól – „sortuj” i „pokaż”
c)
uruchomienie kwerendy ikona
d)
wybieranie rekordów wg kilku kryteriów operatory
logiczne „AND” oraz „OR”, własność wiersza „lub”
e)
budowa nowych pól kwerendy - Konstruktor wyrażeń
NR 21
!
K WERENDY –
NR 22
DEFINIOWANIE KRYTERIÓW
K WERENDY -
DODATKOWE FUNKCJE
Dodatkowe funkcje i typy kwerend
1. Parametryczne – parametr podajemy w wierszu „Kryteria” jako
wyrażenie ujęte w nawiasy kwadratowe, np..: > [Podaj kwotę: ]
2. Podsumowujące – tworzą grupy i dla każdej z nich mogą
tworzyć i stosować tzw. agregaty.
Agregat – suma pola, średnia, max, min, zlicz rekordy itp.
3. Krzyżowe – tworzą zestawienia rekordów w postaci tablicy
dwudzielczej
a)
wskazać źródło danych
b)
wskazać pola definiujące nagłówki kolumn
c)
wskazać pola definiujące nagłówki wierszy
d)
wybrać pole, które podlega agregacji
NR 23
K WERENDY
PODSUMOWUJĄCE
-
PRZYKŁAD
- ikona „podsumowanie”, dodaje nowy wiersz do siatki projektowej
kwerendy; określamy tu pole grupujące oraz pola poddane
agregacji tzn. pola na których będą wykonywane obliczenia
sumy, średniej, max, min itp..
NR 24
K WERENDY
KRZYŻOWE
-
PRZYKŁAD
Powyższa kwerenda wyznacza liczbę osób na poszczególnych
stanowiskach w poszczególnych oddziałach firmy.
NR 25
F ORMULARZE
1.
2.
Struktura formularza – 5 sekcji
a)
Sekcja nagłówka strony
b)
Sekcja nagłówka formularza
c)
Sekcja szczegółów
d)
Sekcja stopki strony
e)
Sekcja stopki formularza
Sposoby tworzenia formularzy
a)
Przy pomocy Kreatora
b)
Przy pomocy Przybornika
Pasek Przybornika
NR 26
F ORMULARZE - STRUKTURA
Struktura formularza
NR 27
R APORTY -
NR 28
BUDOWA