Technologia informacyjna - PB Wydział Elektryczny

advertisement
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
dr inŜ. Jarosław Forenc
2/16
Bazy danych - Plan zajęć
Technologia informacyjna
Podstawowe pojęcia:
baza danych, system zarządzania bazą danych
tabela, rekord, pole
formularz, kwerenda, raport
klucz podstawowy (główny), klucz obcy, relacja
Politechnika Białostocka - Wydział Elektryczny
Projektowanie bazy danych (tabele, klucze)
semestr I, studia stacjonarne I stopnia
Rok akademicki 2009/2010
Relacje między tabelami
Pracownia nr 11 (23.12.2009)
(23.12.2009)
dr inż. Jarosław Forenc
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
dr inŜ. Jarosław Forenc
3/16
Bazy danych - Podstawowe pojęcia
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
Bazy danych - System informatyczny
Baza danych - zbiór informacji i obiektów związanych z pewnym
tematem lub zadaniem
Schemat bazy danych opisuje strukturę danych
i powiązania między nimi
Baza danych - zbiór powiązanych ze sobą informacji
Baza danych - zbiór informacji, które można przetwarzać za pomocą
odpowiednich programów komputerowych
Zarządzanie bazą danych odbywa się poprzez
System Zarządzania Bazą Danych - SZBD
(ang. DataBase Management System - DBMS)
Baza danych - zbiór danych zapisanych w ściśle określony sposób
w strukturach odpowiadających założonemu modelowi
danych (wikipedia)
Baza danych i SZBD nazywane są systemem
bazy danych
Z systemem bazy danych współpracują
programy użytkowników przetwarzające
dane (aplikacje):
Przykłady baz danych:
książka adresowa
lista płac pracowników firmy
katalog z kartami pacjentów przychodni
zasoby biblioteki
ewidencja kierowców i pojazdów
wstawianie nowych danych
modyfikowanie danych już istniejących
usuwanie danych nieaktualnych
wyszukiwanie danych i tworzenie unikatowych
zestawów danych
porządkowanie danych wg różnych kryteriów
dr inŜ. Jarosław Forenc
4/16
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
dr inŜ. Jarosław Forenc
5/16
Bazy danych - Podstawowe pojęcia
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
dr inŜ. Jarosław Forenc
6/16
Bazy danych - Podstawowe pojęcia
tabela - podstawowa jednostka organizacyjna bazy przechowująca dane
tabela - podstawowa jednostka organizacyjna bazy przechowująca dane
pole - kolumna tabeli zawierająca dane jednego typu (np. imię, adres)
rekord - pojedynczy wiersz tabeli z zestawem unikatowych danych
pochodzących od różnych pól (rekord nazywany bywa także
krotką)
każde pole ma swoją nazwę
każde pole ma przyporządkowany określony typ (tekst, liczba, data, godzina)
dla pola o określonym typie można określić dodatkowe parametry,
np. maksymalną długość danej przechowywanej w polu
pola nazywane są także atrybutami
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
dr inŜ. Jarosław Forenc
7/16
Bazy danych - Podstawowe pojęcia
formularz - narzędzie służące do wprowadzania danych i prezentacji ich
w innej formie niż tabelaryczna
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
raport - zestawienie wybranych z bazy informacji, w formie gotowej
do wydruku, np.
występuje najczęściej w postaci okna z polami edycyjnymi
spis numerów telefonów
użytkownik może określić szatę graficzną formularza oraz położenie
wyświetlanych danych
lista tytułów książek z biblioteki
kwerenda - (ang. query) narzędzie służące do:
wybierania z tabel rekordów według określonych kryteriów
łączenia pól z różnych powiązanych ze sobą tabel
dokonywania obliczeń na polach liczbowych
uzupełniania, dołączania i usuwania rekordów
kwerendy mogą być tworzone na podstawie tabel lub innych kwerend
przykłady kwerend:
osoby mieszkające w danym mieście
studenci otrzymujący stypendium
8/16
Bazy danych - Podstawowe pojęcia
dr inŜ. Jarosław Forenc
klucz podstawowy (główny) - pole (lub zbiór pól) jednoznacznie
identyfikujących każdy rekord
informacja zawarta w polu klucza nie może powtarzać się w rekordach
(kluczem nie może być np. imię, nazwisko, miasto, itp.)
jako klucz podstawowy najczęściej stosuje się dodatkowe pole zawierające
numer rekordu, którego wartość ustawiana jest w programie automatycznie
klucz obcy - pole odwołujące się do klucza podstawowego innej tabeli
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
dr inŜ. Jarosław Forenc
9/16
Bazy danych - Podstawowe pojęcia
relacje umożliwiają takie zaprojektowanie bazy danych, aby dane
niepotrzebnie nie powtarzały się w rekordach
baza danych, w której między tabelami tworzy się relacje nazywana jest
relacyjną bazą danych
dr inŜ. Jarosław Forenc
11/16
Ta sama informacja nie powinna być wielokrotnie wprowadzana do jednej
lub kilku tabel
uaktualnienie danych wymaga ich zmiany tylko w jednym miejscu
unikamy wystąpienia niezgodności danych zapisanych w różnych miejscach
umożliwia to przetwarzanie danych dotyczących jednego zagadnienia
niezależnie od danych dotyczących innych zagadnień
Projektowanie tabel
Określenie relacji między tabelami
Stworzenie formularzy, kwerend, raportów
Testowanie bazy
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
Nie należy wprowadzać danych pośrednich lub obliczonych
Trzeba uwzględnić wszystkie potrzebne informacje
Informacje należy przechowywać w możliwie najmniejszych jednostkach
logicznych (np. oddzielnie imię i nazwisko)
Trzeba ustalić pola kluczowe tabeli
dr inŜ. Jarosław Forenc
12/16
Bazy danych - Projektowanie relacyjnej bazy danych
Reguły projektowania relacyjnej bazy danych sformułował E.F. Codd (1970)
Codd określił tzw. trzy postacie normalne modelu relacyjnego:
pierwsza postać normalna (1NF), NF - ang. Normal Form
druga postać normalna (2NF)
trzecia postać normalna (3NF)
Obecnie stosowane są także:
Należy powiązać każde pole bezpośrednio z zagadnieniem, którego
dotyczy tabela
określenie celu oraz sposobu użytkowania bazy
określenie analizowanych zagadnień (tabele) oraz informacji
związanych z zagadnieniami (pola w tabeli)
Każda tabela powinna zawierać informacje tylko na jeden temat
10/16
Określenie celu, któremu ma służyć baza danych
Bazy danych - Projektowanie tabel (Zasady)
dr inŜ. Jarosław Forenc
Bazy danych - Etapy projektowania bazy danych
relacja - związek dwóch tabel oparty na parze klucz podstawowy klucz obcy
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
czwarta postać normalna
piąta postać normalna
postać normalna Boyca-Codda
postać normalna klucza-domeny
Postać normalna jest zbiorem kryteriów, jakie musi spełniać tabela
w relacyjnej bazie danych
Proces sprowadzania tabeli do postaci normalnych nazywa się normalizacją
Obecnie zamiast normalizacji stosuje się projektowanie metodą
modelowania danych przy pomocy diagramów związków encji
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
dr inŜ. Jarosław Forenc
13/16
Bazy danych - Normalizacja
tabela reprezentująca tę relację nie zawiera powtarzających się grup informacji,
każda kolumna jest wartością skalarną, a nie macierzą lub listą czy też czymkolwiek
co posiada własną strukturę
ustalenie zbioru danych, które maja być przechowywane w bazie danych
(dane należy zebrać w jednej tabeli, która w drugim etapie będzie dzielona
na mniejsze tabele)
przekształcenie zbioru danych do kolejnych postaci normalnych
usunięcie nadmiarowości powodującej wzrost objętości danych oraz problemy
z utrzymaniem spójności bazy danych, prowadząc do tzw. anomalii
Wady normalizacji:
wydłużenie czasu wyszukiwania (np. stan magazynu)
matematyka a rzeczywistość (nie zawsze 2 + 2 = 4)
nadmiarowość na osi czasu (np. zmiana algorytmu)
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
dr inŜ. Jarosław Forenc
15/16
Bazy danych - Druga postać normalna (2NF)
relacja jest w pierwszej postaci normalnej jeśli wartości atrybutów są elementarne
(niepodzielne), tzn. pojedyncze wartości określonego typu, a nie zbiory danych
Cel normalizacji:
14/16
Wyróżnia się dwa główne etapy normalizacji:
dr inŜ. Jarosław Forenc
Bazy danych - Pierwsza postać normalna (1NF)
Normalizacja - proces identyfikowania logicznych związków pomiędzy
elementami danych w posiadanym zbiorze danych i projektowania bazy
danych, która związki te będzie reprezentować
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
polega na utworzeniu oddzielnych tabel dla zestawów wartości odnoszących się
do wielu rekordów i powiązaniu tabel za pomocą klucza obcego
Technologia informacyjna - Pracownia nr 11
Rok akademicki 2009/2010
dr inŜ. Jarosław Forenc
Bazy danych - Trzecia postać normalna (3NF)
polega na eliminacji pól, które nie zależą od klucza (wartości rekordu,
które nie są częścią jego klucza, nie należą do tabeli)
16/16
Download