Systemy baz danych 1 - zst-czest.cba.pl · bazę danych lokalnie –na określonym komputerze. Przykładem systemu zarządzania bazą danych: MS Access, MySQL, Firebird, Oracle, Microsoft
Post on 01-Mar-2019
229 Views
Preview:
Transcript
Systemy baz danych
Wykład 1Wykład 1
mgr inż. Sylwia Glińska
Baza danych
Baza danych to uporządkowany zbiór danych z
określonej dziedziny tematycznej, zorganizowany
w sposób ułatwiający do nich dostęp.
System zarządzania bazą danych to program System zarządzania bazą danych to program
zarządzający danymi w bazie i umożliwiający ich
przetwarzanie.
Bazą danych stają się dane, zapisane w ściśle
określony sposób według założonego modelu
danych
Zalety korzystania z komputerowych
baz danych
• Szybkie wyszukiwanie informacji
• Łatwe wykonywanie obliczeń
• Możliwość przechowywania dużej ilości
danych na małej powierzchnidanych na małej powierzchni
• Szybkie porządkowanie danych
Modele baz danych
Model bazy danych – 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) oraz ich związków. obiektów (encji) oraz ich związków.
W informatyce głównymi modelami baz danych są:
� hierarchiczny model danych,
� relacyjny model danych,
� sieciowy (grafowy) model danych,
� obiektowy model danych,
Model hierarchiczny
W modelu hierarchicznym dane są
przechowywane na zasadzie rekordów
nadrzędnych-podrzędnych, tzn. rekordy
przypominają strukturę drzewa. Każdy rekord
(z wyjątkiem głównego) jest związany z (z wyjątkiem głównego) jest związany z
dokładnie jednym rekordem nadrzędnym.
Sieciowy model danych
Model sieciowej bazy danych – zmodyfikowana wersja modelu hierarchicznego, pozwalająca na definiowanie relacji wiele-wiele w postaci struktury drzewiastej bez powtarzania poszczególnych wartości w ramach obiektu danych. Model sieciowy korzysta z dwóch obiektu danych. Model sieciowy korzysta z dwóch podstawowych elementów: rekordów i zbiorów
Obiektowy model baz danych
Model obiektowy łączy cechy programów
komputerowych tworzonych w językach
programowania obiektowego z cechami
aplikacji bazodanowych. Obiekt w bazie aplikacji bazodanowych. Obiekt w bazie
reprezentuje obiekt w świecie rzeczywistym.
W bazach obiektowych dane
przechowywane są w strukturach obiektowych
(zdefiniowanych jako klasy).
Model relacyjno-obiektowy
Bazy relacyjno-obiektowe pozwalają na
manipulowanie danymi jako zestawem
obiektów, posiadają jednak bazę relacyjną jako
wewnętrzny mechanizm przechowywania wewnętrzny mechanizm przechowywania
danych.
Relacyjny model baz danych
Relacyjna baza danych - zbiór danych w postaci tabel połączonych relacjami.
Opis relacyjnego modelu danych można podzielić na trzy części:
■ struktury danych – czyli, w jaki sposób i według jakich zasad organizujemy przechowywanie danych oraz organizujemy przechowywanie danych oraz
według jakich zasad należy je projektować;
■ języki manipulowania danymi – czyli, w jaki sposób zapisywać, modyfikować, usuwać oraz pobierać dane
znajdujące się w bazie danych
■ integralność danych – czyli, w jaki sposób zapewnić poprawność przechowywanych danych.
Relacyjny model baz danychZasady dla poprawnie działającego relacyjnego modelu
baz danych:
• Każda tabela w bazie danych ma jednoznaczną nazwę
• Każda kolumna tabeli ma jednoznaczną nazwę w obrębie tej tabeli
• Wszystkie wartości w kolumnie są tego samego typu• Wszystkie wartości w kolumnie są tego samego typu
• W tabeli nie mogą istnieć dwa identyczne wiersze,
każdy wiersz jest różny, tabela może istnieć bez wierszy
• W tabeli relacyjnej są przechowywane dane oparte na
typach prostych (dane elementarne)
• Kolejność wierszy i kolejność kolumn w tabeli
relacyjnej nie ma żadnego znaczenia – czyli położenie
danej w tabeli nie wpływa na jej znaczenie
Podstawowe pojęcia dotyczące relacyjnych baz danych
Tabela
Klucz podstawowy (główny)
Definiowanie klucza podstawowego
Cechy klucza podstawowego
� Jednoznacznie identyfikuje dany rekord
� Nigdy nie jest pusty ani nie ma wartości NULL
– wartość zawsze istnieje
� Jest niezbędny przy zakładaniu relacji� Jest niezbędny przy zakładaniu relacji
� Jest rzadko zmieniany (najlepiej nigdy)
Indeks
Przykład
Ustawienia indeksowania dla pola
RelacjePo podzieleniu danych na tabele i zdefiniowaniu pól kluczy podstawowych
trzeba wprowadzić do systemu bazy danych informacje na temat sposobu
poprawnego łączenia powiązanych danych w logiczną całość. W tym celu
definiuje się relacje między tabelami.
Przykładowe relacje miedzy tabelami
Widok związku tabel na karcie relacje
Rekord (ang.record) zwany także krotką lub wierszem, to pozioma struktura danych opisująca jeden obiekt. Rekord składa się z pól opisujących dokładnie cechy obiektu np. pojedynczego pracownika.
Atrybut (cecha, pole, kolumna) to struktura danych opisująca pojedynczą daną w rekordzie np. nazwisko pracownika
System zarządzania bazą danych, SZBD (ang. DatabaseManagement System, DBMS) – oprogramowanie bądź
System zarządzania bazą danych, SZBD (ang. DatabaseManagement System, DBMS) – oprogramowanie bądź system informatyczny służący do zarządzania bazą danych. System zarządzania bazą danych może być również serwerem bazy danych (SBD) lub też może udostępniać bazę danych lokalnie – na określonym komputerze. Przykładem systemu zarządzania bazą danych: MS Access, MySQL, Firebird, Oracle, Microsoft SQL Server itp.
Encja to reprezentacja wyobrażonego lub rzeczywistego obiektu (grupy
obiektów) stosowana przy modelowaniu danych podczas analizy
informatycznej. Formalnie jest to pojęcie niedefiniowalne, a
podstawową cechą encji jest to, że jest rozróżnialna od innych encji.
Przykłady encji (i atrybuty w encji):
Osoba (imię, nazwisko, PESEL)
Pojazd (wysokość, szerokość, długość, sposób poruszania się)
Klucz obcy - w modelu relacyjnym bazy danych kombinacja jednego lub
więcej atrybutów tabeli, który wyraża się w dwóch lub większej liczbie więcej atrybutów tabeli, który wyraża się w dwóch lub większej liczbie
relacji. Wykorzystuje się go do tworzenia relacji pomiędzy parą tabel.
Np. jeśli mamy bazę "Firma" składającą się z tabel:
Oddział (id_oddziału, miejscowość, telefon, ...)
Pracownik (id_pracownika, imię, nazwisko, id_oddziału, ...)
to kolumna Pracownik.id_oddziału mogłaby być kluczem obcym
związanym z kolumną Oddział.id_oddziału
Typy danych
Właściwości pól
Maska
wprowadzania
Przykłady
masek wprowadzania
Typ danej (ang. data type) - rodzaj danej, czyli forma zapisu informacji:
� znakowy (ang.character) dana może przybierać tylko wartości znaków pisarskich
� liczbowy (ang.number) dana może przechowywać tylko liczby
� logiczny (ang.logical) dana może przybierać tylko dwie wartości: prawda, fałsz (tak, nie)
� data (ang.date) dana może przyjmować postać daty i czasu np. rok.miesiąc.dzieńgodz:min:sek
� alfanumeryczny (ang.alphanumeric) dana może przybierać wartości znaków ASCII oraz cyfry
� numeryczny (ang.numeric) wartościami danej mogą być tylko cyfry i znaki: + (plus), - (minus).(plus), - (minus).
� walutowy (ang.currency) dana może przyjmować wartości liczbowe razem z symbolem waluty
� notatnikowy (ang.memo) dana może być oddzielnym zbiorem tekstowym służącym do przechowywania dowolnych opisów.
� binarny (ang.binary) dana może być np. plikiem dźwiękowym lub filmowym.
� graficzny (ang.graphic) dana przechowuje grafikę np. rysunki.
� obiektowy (ang.OLE) dana przechowuje obiekty do których dostęp dokonuje się za pomocą techniki OLE (ang. object linking and embleding), czyli obiektów tworzonych przez inne aplikacje.
Relacje i ich typy1. Relacja jeden-do-jednego
W relacji jeden-do-jednego każdy rekord w tabeli A może mieć tylko jeden
dopasowany rekord z tabeli B, i tak samo każdy rekord w tabeli B
może mieć tylko jeden dopasowany rekord z tabeli A. Ten typ relacji
spotyka się rzadko, ponieważ większość informacji powiązanych w ten
sposób byłoby zawartych w jednej tabeli. Relacji jeden-do-jednego
można używać do podziału tabeli z wieloma polami, do odizolowania
części tabeli ze względów bezpieczeństwa, albo do przechowania
informacji odnoszącej się tylko do podzbioru tabeli głównej.
2. Relacja jeden-do-wielu
Relacja jeden-do-wielu jest najbardziej powszechnym typem relacji. Relacja jeden-do-wielu jest najbardziej powszechnym typem relacji.
W relacji jeden-do-wielu rekord w tabeli A może mieć wiele dopasowanych
do niego rekordów z tabeli B, ale rekord w tabeli B ma tylko jeden
dopasowany rekord w tabeli A.
3. Relacja wiele-do-wielu
W relacji wiele-do-wielu, rekord w tabeli A może mieć wiele dopasowanych
do niego rekordów z tabeli B i tak samo rekord w tabeli B może mieć
wiele dopasowanych do niego rekordów z tabeli A. Jest to możliwe
tylko przez zdefiniowanie trzeciej tabeli (nazywanej tabelą łącza),
której klucz podstawowy składa się z dwóch pól kluczy obcych z tabel
A i B. Relacja wiele-do-wielu jest w istocie dwiema relacjami jeden-
do-wielu z trzecią tabelą. Na przykład, tabele "Zamówienia" i
"Produkty" są powiązane relacją wiele-do-wielu zdefiniowaną przez
utworzenie dwóch relacji jeden-do-wielu z tabelą "Opisy zamówień„.
Normalizowanie baz danych,
redundancje, postaci normalne
Normalizacja bazy danych jest to proces mający nacelu eliminację powtarzających się danych wrelacyjnej bazie danych. Główna idea polega natrzymaniu danych w jednym miejscu, a w raziepotrzeby linkowania do danych. Taki sposóbtworzenia bazy danych zwiększa bezpieczeństwopotrzeby linkowania do danych. Taki sposóbtworzenia bazy danych zwiększa bezpieczeństwodanych i zmniejsza ryzyko powstania niespójności.Istnieją sposoby ustalenia czy dany schemat bazydanych jest "znormalizowany", a jeżeli jest to jakbardzo. Jednym ze sposobów jest przyrównaniedanej bazy do schematów zwanych postaciaminormalnymi
Więzy integralności
Więzy integralności mają na celu zapobieganie
powstawaniu rekordów odłączonych i
synchronizowanie odwołań. Wymusza się je
przez włączenie opcji Wymuszaj więzy przez włączenie opcji Wymuszaj więzy
integralności podczas definiowania relacji
między tabelami. (kaskadowo usuń rekordy
pokrewne, kaskadowo aktualizuj pola
pokrewne)
Sprawdzanie poprawności danych
• Wartość domyślna
• Maska wprowadzania
• Reguły poprawności dla pola i rekordu
Obiekty bazy danych (np. MS Access)
• tabele
• kwerendy
• formularze
• raporty• raporty
• makra
top related