Podstawowe pojęcia i przykłady środowiskowych baz danych

advertisement
Baza danych
Baza danych to:
zbiór danych o określonej strukturze, zapisany na zewnętrznym
nośniku (najczęściej dysku twardym komputera), mogący zaspokoić
potrzeby wielu użytkowników korzystających z niego w sposób selektywny
w dogodnym dla siebie czasie
Baza danych
Relacyjna baza danych to:
baza danych, w której dane podzielone są na mniejsze,
logicznie wydzielone części (zapisane w tabelach) połączone ze sobą
tzw. relacjami określającymi ich wzajemny stosunek
baza danych, która przechowuje obiekty w odróżnieniu od rekordowo (tablicowo)
zorganizowanych danych i połączonych relacjami przechowywanych w relacyjnej
bazie danych. Ponieważ dane przechowywane są w postaci obiektów, mogą być
odczytywane tylko przy pomocy metod udostępnianych przez te obiekty.
Obiekty przechowywane w takiej bazie danych są widoczne jako obiekty języka
programowania. Ta właściwość nazywana jest transparentną trwałością (ang.
transparent persistence).
W połączeniu z obiektowymi językami programowania, obiektowe bazy danych
działają szybciej od baz relacyjnych, ponieważ nie ma potrzeby mapowania relacji na
obiekty (ang. impedance mismatch).
Obiektowe bazy danych rozszerzają obiektowe języki programowania o
funkcjonalność zarządzania wielowątkowością, obiektowy język zapytań, funkcje
odzyskiwania danych.
PODSTAWOWE POJĘCIA
TABELA
fakty, które można zapisać i które posiadają określone znaczenie
pamięci
zbiór danych wzajemnie zależnych
REKORD
czyli wiersz w tabeli
POLE (atrybut)
czyli kolumna w tabeli
KLUCZ
identyfikator rekordu w tabeli
rekord
pole
DANE
RELACJA (zależność)
wszystkie możliwe rodzaje powiązań między rekordami relacyjnej
bazy danych
INDEKS
jest to zbiór par zawierający numer rekordu w bazie oraz wartość
obliczoną na podstawie jednego lub kilku pól rekordu
PODSTAWOWE POJĘCIA
SQL
(Structured Query Language) “strukturalny język zapytań”
QBE
(Query By Example) “pytanie przez przykład”
DBF
format zapisu bazy danych np. DataBase
RDBMS (Relational DataBase Management System) – relacyjny system zarządzania baz
danych, czyli zbiór programów, które umożliwiają użytkownikowi tworzenie bazy i
przetwarzanie zawartych w niej informacji
DBMS
system odpowiedzialny za przechowywanie danych na twardych nośnikach
MDB
format zapisu bazy danych MS Access (do 2003)
ACCDB nowy format bazy danych MS Access (2007-)
RODZAJE ZALEŻNOŚCI
•1-1
rekordowi w pierwszej tabeli odpowiada dokładnie
jeden rekord z innej tabeli
•1-N
rekordowi w pierwszej tabeli odpowiada jeden lub
więcej rekordów w innej tabeli
•N-M rekordowi pierwszej tabeli odpowiada zero, jeden
lub więcej rekordów w innej tabeli i odwrotnie,
rekordowi z innej tabeli odpowiada zero, jeden lub
więcej rekordów w pierwszej tabeli
Zależności N-M
Definicje
Co wskazują klucze?
Klucz - to unikatowy identyfikator rekordu w tabeli
Klucz podstawowy (główny) - pole tabeli, zawierające dane jednoznacznie
identyfikujące dany rekord w tabeli
Klucz obcy - klucz podstawowy jednej tabeli umieszczony w innej tabeli
w celu połączenia obu tabel
Baza danych
Baza danych
Normalizacja bazy danych - dzielenie danych na mniejsze fragmenty
w celu ułatwienia pracy z bazą oraz w celu wyeliminowania zbędnych
i powtarzających się informacji.
Zgodnie z zestawem zasad dr Codda proces projektowania bazy danych nazywany
jest normalizacją danych. Dr Codd wyróżnia sześć poziomów normalizacji.
Skoncentrujemy się tutaj na cztery z nich, gdyż mają one największy wpływ na
decyzje dotyczące projektu bazy:
1NF
pierwsza postać normalna; oznacza, że dane w polu muszą być atomowe czyli
maksymalnie proste; nie można więc zapisać w polu: "Jan Kowalski" ale należy
utworzyć dwa pola: dla imienia i nazwiska
2NF
druga postać normalna; spełnia warunki 1NF oraz zakłada zależność wszystkich pól
nie tworzących klucza podstawowego od składowych tego klucza, tzn. że bez
jednego z elementów klucza nie byłoby możliwe zidentyfikowanie wartości pól
3NF
trzecia postać normalna; spełnia warunki 2NF oraz zakłada, że pola nie tworzące
klucza podstawowego są od siebie niezależne co oznacza, że ich wartości nie mogą
się zmieniać na skutek zmiany wartości innego pola nie będącego kluczem głównym
4NF
czwarta postać normalna; spełnia warunki 3NF oraz zakłada, że uczestniczy w niej
jeden zestaw zdarzeń; oznacza to, że nie można w jednej tabeli umieścić zależności
pacjent – lekarz (relacja N – M ), ale trzeba utworzyć osobną tabelę opisującą te
zależności
Pierwsza postać normalna
W pierwszej postaci normalnej wszystkie kolumny w tabeli muszą posiadać
wartości atomowe. Innymi słowy, każde pole może zawierać tylko jedną
wartość, a nie listę wartości lub powtarzającą się grupę danych.
Rysunek a) przedstawia przykład tabeli, która nie jest w pierwszej postaci
normalnej, ponieważ w kolumnie ContactInfo przechowywana jest tablica
wartości.
Rysunek a) przedstawia
przykład tabeli, która nie jest w
pierwszej postaci normalnej,
ponieważ w kolumnie
ContactInfo przechowywana
jest tablica wartości.
Rysunek b) jest przykładem
tabeli w pierwszej postaci
normalnej, gdyż w żadnej z
kolumn nie występują
powtarzające się informacje.
Imię Nazwisko
Mówimy, że tabela jest w drugiej postaci normalnej, gdy jest w pierwszej postaci
normalnej
i jednocześnie
każde z jej pól nie będących polem klucza głównego
Druga postać
normalna
jest w pełni zależne od całego klucza głównego. Innymi słowy, część informacji
może być przechowywana w innej tabeli i pobierana z niej poprzez odnośnik.
Rysunek a) Mimo iż tabela jest w
pierwszej postaci normalnej, nie jest
jednak w drugiej postaci normalnej.
Klucz główny składa się z ContactID,
ContactInfoID i ContactInfo. Czy
kolumna ContactName zależy od
części klucza: ContactInfoID i
ContactInfo? Nie, gdyż jest zależna
od pola ContactID. Aby przekształcić
tę tabelę do drugiej postaci
normalnej, należy informacje o
kliencie umieścić w osobnej tabeli
odnośnika i utworzyć pomiędzy
tabelami relację jeden-do-wielu.
Rysunek b) tabela jest w
pierwszej postaci normalnej
Trzecia postać normalna
Mimo iż tabele na rys a) są w pierwszej i drugiej postaci normalnej, nie są jednak w
trzeciej postaci normalnej. Z tabelą w trzeciej postaci normalnej mamy do czynienia, gdy
wszystkie pola, nie będące polami klucza głównego, są wzajemnie niezależne.
Rysunek a)
Rysunek b)
Korzyści z normalizacji
 Mniej błędów
 Szybsze wprowadzanie danych
 Mniej wymaganego miejsca na dysku
 Szybsze przeszukiwanie
Literatura
•Date C.J., 2005: Relacyjne bazy danych dla praktyków. Helion. Warszawa.
•OPI, 1997: Bazy Danych. Ośrodek Przetwarzania Informacji. Warszawa.
•Wilton P., Colby J., 2005: SQL. Od podstaw. Warszawa.
•ESRI, 2002: Building geodatabase.
•http://148.81.185.146/han/ibuk/https/ssl.ibuk.pl/ipaper/korpo-6011.ipaper
Download