Projektowanie i tworzenie baz danych
Relacyjny model baz
danych
Relacyjne
bazy danych
Jezyk
SQL
Operacje
relacyjne
Historia
relacyjnych baz danych
RELACYJNE BAZY
DANYCH
Podstawowa wlasciwoscia relacyjnej bazy danych jest to, ze
informacje przechowywane sa w tabelach, a kazda z tabel sklada sie z wierszy i
kolumn. Wiersz tabeli jest pojedynczym rekordem skladajacym sie z kolumn.
Element znajdujacy sie na przecieciu kolumny i wiersza to pole. Pole zawiera
najmniejsza niepodzielna wartosc tzn. taka informacje, która nie moze byc dalej
dzielona ze wzgledu na swoja logiczna wartosc.
Model relacyjnych baz danych opracowal w koncu lat 60-tych
matematyk E. F. Codd.
Struktura danych
W modelu relacyjnych baz danych informacja dostepna jest dla
uzytkownika poprzez tabele. Jest to model abstrakcyjny i nie zwiazany z
fizycznym sposobem przechowywania danych. Relacyjna baza danych ukrywa przed
uzytkownikiem warstwe zarzadzania danymi, co oznacza w praktyce, ze uzywajac
takiej bazy danych, nie musimy znac struktury plików danych.
Przetwarzanie danych
Do wykonywania operacji na relacyjnych bazach danych sluza
operatory relacyjne. Operatory relacyjne wchodza w sklad zapytan, które z kolei
sluza do wykonywania jednej badz wielu operacji relacyjnych na tabeli lub grupie
tabel. Jezykiem pozwalajacym stosowanie operatorów relacyjnych jest jezyk SQL,
którego odpowiedzia jest zawsze tabela. Nie oznacza to jednak, ze uzytkownik
programu dzialajacego na bazie danych widzi tabele – wrecz przeciwnie –
zazwyczaj dane zawarte w tabeli wynikowej sa wizualizowane w zgola odmienny
sposób i zalezy on tylko od fantazji osoby odpowiedzialnej za efekt wizualizacji
i interfejs obslugi pisanej aplikacji.
Jednakze sam fakt, ze wynikiem zapytania jest „wirtualna”
tabela jest niezmiernie istotny. Dzieki takiemu podejsciu mozemy zadac np. dwa
pytania, w wyniku których otrzymamy dwie tabele (czasami calkiem pokazne), do
których z kolei mozemy zadac kolejne pytanie otrzymujac jedna (stosunkowo mala)
tabele, co znacznie ulatwia proces selekcji danych. Oczywiscie znajac strukture
tabel i wynik zapytan mozemy od razu postawic kilka zapytan do bazy danych .
Takie laczenie zapytan nazywane jest zagniezdzaniem zapytan i pozwala otrzymac
wynik bardzo bliski (równy) oczekiwanej odpowiedzi.
Integralnosc danych
Zasady integralnosci wymagaja, aby kazdy wiersz tabeli zawieral wartosc lub
grupe wartosci, które okreslalyby go w sposób jednoznaczny (unikalny). Te
wybrane wartosci nazywane sa kluczem glównym (primary key), natomiast kolumna
badz grupa kolumn z innej tablicy, która odpowiada kluczowi glównemu tablicy
pierwszej nazywana jest kluczem obcym (foreign key). Dodatkowe reguly
integralnosci moga byc nalozone na wybrane kolumny.
Back to
Top
JEZYK
SQL
SQL – Structured Query Language – Strukturalny Jezyk Zapytan
to zbiór komend sluzacy do wprowadzania, modyfikowania i przegladania zawartosci
relacyjnej bazy danych.
Model relacyjnej bazy danych wymaga, aby wszelka komunikacje
z baza danych zapewnial jeden jezyk. W wiekszosci systemów relacyjnych baz
danych jezyk SQL w pelni spelnia wymogi tego modelu, jednakze zaden komercyjny
system nie spelnia w 100% wszystkich wymagan standardu jezyka SQL.
Przetwarzanie danych
Do przetwarzania danych wykorzystujemy dwa rodzaje
komend:
1.
polecenie SELECT – sluzy do wyszukiwania danych. Wyrazenia wykorzystujace
polecenie SELECT nazywamy zapytaniami;
2.
polecenia UPDATE, INSERT, DELETE – sluza do manipulacji danymi.
Definiowanie danych
Instrukcje definiowania danych pozwalaja na tworzenie i
modyfikacje struktury bazy danych oraz jej zasobów. Najwazniejsze z nich to:
CREATE – tworzenie baz danych, tabel, widoków;
ALTER – modyfikacja definicji tabeli (tylko w pewnych
granicach).
Zarzadzanie baza danych
Komendy zwiazane z administracja baza danych sluza do
zakladania kont uzytkowników, przydzielania lub odbierania im uprawnien – czyli
ustalania zakresu dzialania na danych oraz do innych zadan administracyjnych.
Wiekszosc systemów dostarcza indywidualne, specjalne narzedzia do konfiguracji i
obslugi bazy danych. Bardzo czesto dane traktujace o charakterze bazy danych sa
zawarte tez w tabeli, do której jednak dostep ma tylko administrator
systemu.
Standardy jezyka SQL
Najwieksza zaleta jezyka SQL jest to, ze mimo bardzo wielu
komercyjnych i darmowych „silników” baz danych – podstawowe elementy jezyka
pozostaja niezmienne.
Standard jezyka SQL jest sprawdzany i zatwierdzany przez
miedzynarodowa organizacje International Standards Organization (ISO), natomiast
w Stanach Zjednoczonych National Institute of Standards and Testing
(NIST).
Obecnie obowiazuje standard przyjety w 1992 r. i jest to SQL-92,
jednakze zaden komercyjny produkt, nie jest z nim calkowicie zgodny (chodzi tu
glównie o firmowe rozszerzenia).
Back to
Top
OPERACJE
RELACYJNE
Operacje relacyjne wystepuja we wszystkich relacyjnych bazach
danych a ich wynikami zawsze sa tabele.
Tabela „Osoby”.
Id
Nazwisko
Imie
Woj_id
1
AAAAAA
aa
1
2
BBBBBB
bb
3
3
CCCCCC
cc
2
4
DDDDDD
dd
7
Selekcja
Operacja selekcji zwraca wynik w postaci grupy rekordów z
tablicy i najczesciej polega na wybraniu o pewne kryteria tylko grupy rekordów
(moze tez oczywiscie zwrócic takze cala tablice).
SELECT * FROM Osoby WHERE Id=3;
Id
Nazwisko
Imie
Woj_id
3
CCCCCC
cc
2
Projekcja
Projekcja pozwala okreslic kolumny, które beda zwracane przez
zapytanie. To rozwiazanie posiada dwie zalety – zmniejszenie ilosci informacji w
odpowiedzi oraz zdecydowane przyspieszenie dzialania.
SELECT Nazwisko FROM Osoby WHERE Imie = ‘cc’;
Nazwisko
CCCCCC
DDDDDD
Zlaczenie
Operacja zlaczenia ( JOIN ) umozliwia wykorzystanie wielu
tabel jako zródla danych dla zapytania.
Tabela „Woj”
Id
Nazwa
1
lodzkie
2
slaskie
SELECT Nazwisko, Nazwa FROM Osoby, Woj. WHERE Osoby.Woj_id =
Woj.Id;
Nazwisko
Nazwa
AAAAAA
lodzkie
CCCCCC
slaskie
Back to
Top
EWOLUCJA RELACYJNYCH BAZ
DANYCH
Systemy scentralizowane
Program wykonywany byl na duzych komputerach, do których
uzytkownik mial dostep przez interfejs tekstowy. Ten model przetwarzania danych
dominowal do 1980 r., kiedy to rozpoczal sie gwaltowny rozwój komputerów klasy
PC. Zaleta systemu scentralizowanego bylo m. in. to, ze byl one latwy w
administrowaniu i niezawodny poniewaz nie istnial problem z konfiguracja
oprogramowania dla wielu uzytkowników (róznorodnosc programów) a wystarczylo
jedynie zadbac o prawidlowa konfiguracje i funkcjonowanie komputera
centralnego.
System klient – serwer
Model przenosi czesc obciazenia, jakie do tej pory spoczywalo
na duzym komputerze (MAINFRAME), do komputera uzytkownika. Baza danych pozostala
oczywiscie na serwerze, ale interfejs uzytkownika zostal przeniesiony na
komputer klienta. Dzieki takiemu rozwiazaniu i bardzo szybkiemu rozwojowi nowych
technik programowania, diametralnie zmienil sie interfejs obslugi – zaczeto
wykorzystywac bardziej przyjazny interfejs graficzny, a takze zdecydowanie
wplynelo to na szybkosc dzialania aplikacji, gdyz wiele operacji wykonywanych
jest na komputerze klienta.
Niewatpliwa wada tego systemu jest sprawa konfiguracji
oprogramowania dla duzej ilosci stacji roboczych, problemy z modyfikowaniem
oprogramowania czy w koncu sama administracja. Prócz tego idea rozlokowywania
informacji w komputerach PC (pliki, katalogi ...) potwierdza prawo Murphego,
którego dokladnie nie pamietam, ale brzmi mniej wiecej tak: Im urzadzenie
techniczne posiada wiecej elementów skladowych, tym wieksze istnieje
prawdopodobienstwo ze ulegnie uszkodzeniu; – bez komentarza.
Bazy danych na stronach WWW
W 1993 r. Tim Berners Lee wprowadzil World Wide Web a
nastepnie stworzyl przegladarke i serwer. Po okresie przekazywania za pomoca
internetu tekstu i obrazów, przyszedl czas na biznes, gdzie bez baz danych ani
rusz.
Mozna chyba stwierdzic, iz platforma oparta o strony Web
wykorzystuje obie pozytywne cechy dwóch poprzednich systemów tzn. przyjazny
interfejs graficzny i nieistotnosc wykorzystywanej platformy po stronie klienta
– wystarcza tylko przegladarka WWW.
Przyszlosc ... rysuje sie równie ciekawie. Na dzien dzisiejszy juz wiele
gazet zapisuje swoje artykuly jako rekordy bazy danych, a zapowiedzi Microsoftu
dotyczace reorganizacji systemu plików na platformie Windows i zamianie go w
jedna baze danych (prócz negatywnych efektów ubocznych) sprawia, iz programista
baz danych nie powinien czuc sie w najblizszym czasie zagrozony wizja
bezrobocia.
Back to
Top
Copyright 2002 by JRSRevised: maj 21, 2002 .
Powrót do
poprzedniej strony
Wyszukiwarka
Podobne podstrony:
Tworzenie baz danych karta pracy01 Część I Projektowanie i tworzenie bazy danych SQLprojektowanie baz danych PRZYKŁADProjektowanie baz danychProjektowanie baz danychTworzenie interfejsów do baz danych z wykorzystaniem technologiiAccess zaawansowane projektowanie baz danychProjekt z baz danych część 1 Stokowska PaulaProjektowanie baz danychDelphi 4 Tworzenie systemów baz danych Księga ekspertaWprowadzenie do baz danychPodstawy baz danych zajecia 2 z SQL Tabela Biblioteka2004 11 Porównanie serwerów relacyjnych baz danych Open Source [Bazy Danych]IWZ 2 Podstawy baz danychAnaliza baz danych na temat materiałów betonopodobnychwięcej podobnych podstron