Opracowała: Emilia Jachna
III Rok ETI
Podstawowe pojęcia:
Baza danych – zbiór informacji opisujący
wybrany fragment rzeczywistości. Np. Dla
sklepu: dane dotyczące sprzedawanych
towarów w sklepie, klientów sklepu,
pracowników, zamówień
Schemat baz danych – określa w jaka powinna
być struktura danych oraz w jaki sposób dane
są powiązane
System zarządzania bazą danych (DBMS) –
zbiór narzędzi pozwalający na dostęp oraz na
zarządzanie jedną lub wieloma bazami danych
System baz danych – baza danych + DBMS
Model danych – zbiór ogólnych zasad
posługiwania się danymi
Model bazy danych
Jest to zbiór zasad (specyfikacji), opisujących
strukturę danych w bazie danych. Określane są
również dozwolone operacje. Definiuje się
strukturę danych poprzez specyfikację
reprezentacji dozwolonych w modelu obiektów
(encji - relacji) oraz ich związków. W informatyce
głównymi modelami baz danych są:
Modele historyczne (klasyczne):
hierarchiczny model danych,
grafowy (sieciowy) model danych,
relacyjny model danych,
Hierarchiczny model
danych
W modelu hierarchicznym dane są na
zasadzie rekordów nadrzędnych-podrzędnych,
tzn. rekordy przypominają strukturę drzewa.
Każdy rekord (za wyjątkiem głównego) jest
związany z dokładnie jednym rekordem
nadrzędnym.
Dane w takim modelu są znajdowanie na
zasadzie wyszukiwania rekordów podrzędnych
względem rekordu nadrzędnego.
Definicja danych
Dwie struktury danych: typy rekordów oraz związki
nadrzędny – podrzędny
Typ rekordu jest nazwaną strukturą danych złożoną ze
zbioru nazwanych pól np. Imię, Nazwisko. Dla każdego
pola przyporządkowany jest typ danych
Związki nadrzędny – podrzędny jest związkiem jeden do
wiele
Integralność danych
Dla każdego rekordu oprócz korzenia istnieje rekord
nadrzędny
Usunięcie rekordu nadrzędnego powoduje usunięcie
wszystkich rekordów podrzędnych
Rekord podrzędny może mieć tylko jeden rekord
nadrzędny
Relacyjny model danych
(RDBMS)
Relacyjny model baz danych został wymyślony przez
Edgara Franka Codda na przełomie lat 70. i 80.
zeszłego stulecia. Standard RDBMS (RDBMS ang.
Relational Database Management Systems) został
ostatecznie opracowany przez ANSI X3H2. Dane w
takim modelu przechowywane są w tabelach, z
których każda ma stałą ilość kolumn i dowolną ilość
wierszy. Każda tabela (relacja) ma zdefiniowany klucz
danych (key) - wyróżniony atrybut lub kilka takich
atrybutów, którego wartość jednoznacznie identyfikuje
dany wiersz. Wyszukiwanie danych odbywa się za
pomocą odwołania się programu do danego klucza i
identyfikacji danego wiersza za pomocą tegoż.
Baza danych jest zbiorem relacji, o następujących własnościach:
Każda relacja w bazie danych jest jednoznacznie określona przez swoją nazwę.
Każda kolumna w relacji ma jednoznaczną nazwę (w ramach tej relacji).
Kolumny relacji tworzą zbiór nieuporządkowany. Kolumny nazywane bywają
również atrybutami.
Wszystkie wartości w danej kolumnie muszą być tego samego typu. Zbiór
możliwych wartości elementów danej kolumny nazywany bywa też jej
dziedziną.
Również wiersze relacji tworzą nieuporządkowany zbiór; w szczególności, nie
ma powtarzających się wierszy. Wiersze relacji nazywa się też encjami.
Każde pole (przecięcie wiersza z kolumną) zawiera wartość atomową z
dziedziny określonej przez kolumnę. Brakowi wartosci odpowiada wartość
specjalna NULL, zgodna z każdym typem kolumny (chyba, że została jawnie
wykluczona przez definicję typu kolumny).
Każda relacja zawiera klucz główny -- kolumnę (lub kolumny), której wartości
jednoznacznie identyfikują wiersz (a więc w szczególności nie powtarzają się).
Wartością klucza głównego nie może być NULL.
Model relacyjny dostarcza dodatkowych, specyficznych dla siebie postaci reguł
integralności:
Integralność encji: każda tabela musi posiadać klucz główny, a wartości klucza
głównego muszą być w ramach tabeli unikalne i nie równe NULL. W szczególności,
zapobiega to wystąpieniu w tabeli powtórzeń wierszy.
Integralność referencyjna: każda wartość klucza obcego może być albo równa jakiejś
wartości klucza głównego występującej w tabeli powiązanej, lub (ewentualnie) NULL.
Pociąga to za sobą konieczność określenia reguły postępowania w wypadku usuwania
wiersza z tabeli powiązanej, co mogłoby unieważnić niektóre wartości kluczy obcych w
tabelach do niej się odnoszących. W grę wchodzą trzy postacie takiej reguły:
Restricted: usunięcie wiersza jest zabronione, dopóki nie zostaną usunięte lub
odpowiednio zmodyfikowane wiersze z innych tabel, których wartości kluczy obcych
stałyby się wskutek tej operacji nieważne;
Cascades: usunięcie wiersza powoduje automatyczne usunięcie z innych tabel wszystkich
wierszy, dla których wartości kluczy obcych stały się nieważne;
Nullifies: nieważne wartości kluczy obcych ulegają zastąpieniu przez NULL.
W praktyce zazwyczaj jest pożądane stosowanie dalszych warunków integralności
(integralność dodatkowa). Na ogół istnieją w DBMS mechanizmy narzucenia takich
warunków, sformułowanych w języku algebry relacyjnej lub zbliżonym.
Sieciowy model danych
Sieciowy model danych w ogólnym zarysie niewiele odbiega od
hierarchicznego. W miejsce związku nadrzędny-podrzędny
pomiędzy rekordami wprowadza się w nim tzw. typ kolekcji (set),
który jest złożonym typem danych pola zawierającym odniesienia
do innych rekordów określonego typu. Tzn. określenie typu
kolekcji polega na podaniu typu rekordu- ,,właściciela'' i typu
rekordów-elementów kolekcji (oraz ew. klucza porządkowania
elementów). Operowanie danymi ma też charakter proceduralny:
typowe operacje to wyszukiwanie rekordu na podstawie
zawartości pól i/lub przynależności do danego wystąpienia typu
kolekcji, i dokonywanie modyfikacji bieżącego rekordu.
Warunki integralności danych, poza oczywistymi już więzami
dotyczącymi zgodności zawartości pól rekordu z określeniem typu
rekordu i unikalności pól kluczowych, mogą być formułowane w
terminach wymogu przynależności rekordu do jakiegoś
wystąpienia określonego typu kolekcji.
Definicja danych
Dwie struktury danych: typy rekordów i typy
kolekcji
Pola rekordów mogą mieć typy złożone
Typy kolekcji – opis związku jeden do wiele
między typami rekordów - posiada typ rekordu
właściciela oraz typy rekordów członków