Baza danych jest zbiorem powi膮zanych danych abstrakcyjnym odzwierciedleniem wybranego fragmentu rzeczywisto艣ci.
System zarz膮dzania baz膮 danych zbi贸r program贸w umo偶liwiaj膮cych tworzenie I eksploatacj臋 bazy danych ( przetwarzanie informacji).
System bazy danych: Baza danych + System Zarz膮dzania Baz膮 Danych informacje + system przetwarzania informacji.
Korzy艣ci stosowania baz danych • Niezale偶no艣膰 danych od aplikacji u偶ytkowych. • Zmniejszanie nadmiarowo艣ci przechowywanych danych. • Ujednolicona i centralna administracja. • Wsp贸艂dzielenie danych. • Autoryzacja dost臋pu do danych. • Wielo艣膰 interfejs贸w do danych. • Ograniczenia integralno艣ciowe: (m贸wi jaka informacja ma by膰 przechowywana 偶eby by艂a poprawna). • Ochrona przed awariami systemu.
Pierwsza posta膰 normalna: Encja jest w 1NF (Normal Form), gdy ka偶da tabela posiada okre艣lony klucz g艂贸wny, kt贸ry jest niepowtarzalny. Nie posiada powtarzaj膮cych si臋 atrybut贸w ( nie dubluje si臋). Je艣li atrybut posiada kilka warto艣ci w jednej krotce to definiujemy now膮 encj臋, opisan膮 przez ten atrybut.
Druga posta膰 normalna : Encja jest w 2NF, je偶eli encja posiada klucz g艂贸wny z艂o偶ony z kilku atrybut贸w, to wszystkie atrybuty zale偶膮 tylko od ca艂ego klucza g艂贸wnego. Je偶eli atrybut (kolumna) zale偶y tylko od cz臋艣ci klucza g艂贸wnego, to ten atrybut i ta cz臋艣膰 identyfikatora tworz膮 podstaw臋 nowej encji.
Trzecia posta膰 normalna: Encja jest w 3NF, gdy wszystkie atrybuty encji zale偶膮 bezpo艣rednio od klucza g艂贸wnego. Je偶eli jaki艣 atrybut zale偶y od jakiego艣 innego atrybutu, kt贸ry nie jest cz臋艣ci膮 klucza g艂贸wnego, to atrybuty te tworz膮 podstaw臋 nowej encji.
Postulaty dr E.F.Cooda.
Informacyjny.
Gwarantowanego dost臋pu.
Systemowej obs艂ugi warto艣ci NULL
Dynamicznego s艂ownika danych.
Pe艂nego j臋zyka danych.
Modyfikowania bazy danych przez perspektywy.
Modyfikowania danych na wysokim poziomie abstrakcji.
Fizycznej niezale偶no艣ci danych.
Logicznej niezale偶no艣ci danych.
Niezale偶no艣ci wi臋z贸w sp贸jno艣ci.
Niezale偶no艣ci dystrybucyjnej.
Bezpiecznych operacji niskiego poziomu (brak regu艂 wywrotowych).
W艂asno艣ci relacji (tabel)
Wszystkie wiersze tabeli s膮 unikalne. W przeciwnym wypadku by艂y by one nierozr贸偶nialne.
Nazwy kolumn ka偶dej tabeli s膮 unikalne. Kolumny s膮 identyfikowane przez nazw臋, a nie np.: pozycj臋.
Kolejno艣膰 wierszy w tabeli jest nieokre艣lona.
Kolejno艣膰 kolumn jest nieokre艣lona
Warto艣ci p贸l s膮 elementarne (nierozk艂adalne)
Wszystkie warto艣ci kolumnie s膮 tego samego typu.
Celem normalizacji jest unikni臋cie problem贸w i potencjalnych przyczyn b艂臋d贸w zwi膮zanych z :
• Nadmiarowo艣ci膮 danych. • Efektem ubocznym usuni臋cia. • Efektem ubocznym modyfikacji. • Efektem ubocznym wstawienia.
Strukturalny j臋zyk zapyta艅 SQL: • w 1970 E. Cood publikuja artyku艂: Relacyjny model danych dla du偶ych bank贸w danych wsp贸艂u偶ywania. • interfejs dost臋pu do relacyjnych baz danych SEQUEL SQL • standardy je偶yka SQL-89 i SQL-92 (SQL-2)
Dodawanie i kasowanie krotek:
Dodawanie pojedy艅czej krotki do relacji: Insert into Publisher (pub_id.pub_name.city) values (2205.”Aber”.”Warszawa”)
Kasowanie zastawu krotek spe艂niaj膮cych wybrane kryteria:(delete from publisher where city=Warszawa).
Tabela reacyjna: p艂aska struktura informacyjna z艂o偶ona z zestawu nazwanych kolumn i dowolnej liczby wierszy pozbawionej nazw.
Kolumny: (Atrybut, pole) tworz膮 struktur臋 informacyjn膮 tabeli. Ka偶da nazwana kolumna stanowi domen臋 reprezentowan膮 przez zakres warto艣ci, kt贸re mo偶na w niej przechowywa膰.
Wiersze: (tuple, rekord) reprezentuj膮 poszczeg贸lna wyst膮pienia obiekt贸w reprezentowanych przez tabel臋.
Metodyka tworzenia baz danych:
Analiza mini艣wiata: konstrukcja modelu konceptualnego mini艣wiata.
Transformacja modelu konceptualnego do modelu relacyjnego: relacja.
Proces normalizacji: relacje znormalizowane.
Wyb贸r struktur fizycznych i okre艣lenie 艣cie偶ek dost臋pu: fizyczne struktury danych.
Strojenie systemu.
Warstwy informacyjnych modeli system贸w:
zewn臋trzne modele danych.
koncepcyjne modele informacji.
implementacyjne modele informacji (wewn臋trzne).
fizyczne modele danych (wewn臋trzne).
Implementacyjne Modele Danych okre艣laj膮 technologie transformacji modelu koncepcyjnego do konkretnego systemu zarz膮dzania baz膮 danych. Wyr贸偶nia si臋 w艣r贸d nich modele: hierarchiczne, sieciowe, relacyjne, obiektowe.
Fizyczne Modele Danych okre艣laj膮 sposoby organizacji danych w pami臋ci zewn臋trznej komputera. Rozwa偶a si臋 bity w pami臋ci, rekordy, pliki.