Język SQL. Rozdział 1.
Wprowadzenie do baz danych
Model danych, architektura systemu bazy
danych, funkcje systemu zarządzania bazą
danych, relacyjny model danych.
(c) Instytut Informatyki Politechniki Poznańskiej
1
Model danych
Obiekty świata
rzeczywistego
Obiekty modelu danych
danych
Relacja A
Relacja B
?
Klasa obiektów A
Klasa obiektów B
Klasa obiektów C
(c) Instytut Informatyki Politechniki Poznańskiej
2
Architektura systemu bazy danych
(c) Instytut Informatyki Politechniki Poznańskiej
3
Funkcje systemu zarządzania bazą danych
Wymagania:
• spójność bazy danych
po awarii,
• trwałość danych,
• wielodostęp,
Funkcje SZBD:
• odtwarzanie bazy danych,
•
•
•
poufność danych,
•
•
wydajność,
•
•
rozproszenie danych.
•
(c) Instytut Informatyki Politechniki Poznańskiej
archiwizacja bazy danych,
zarządzanie współbieżnością
transakcji,
identyfikacja użytkowników,
autoryzacja dostępu,
szyfrowanie danych, kontrola
dostępu,
fizyczne struktury danych,
optymalizacja zapytań,
dwufazowe zatwierdzanie
transakcji, replikacja danych.
4
Relacyjny model danych
Historia
Podstawy teoretyczne:
• E.Codd: „A Relational Model for Large Shared Data
Banks”, rok 1970.
Projekty badawcze (lata siedemdziesiąte):
• IBM System R, SEQUEL (1978),
• Berkley Ingres.
Produkty komercyjne:
• Oracle, Ingres, IBM DB2, Sybase, Informix, Microsoft SQL
Server, ...
• Paradox, dBase, ...
• Postgres, MySQL, ...
Standard:
• od 1986.
• aktualnie: SQL:2016.
(c) Instytut Informatyki Politechniki Poznańskiej
5
Model relacyjny
Baza danych
Struktury
Dane
Operacje
Ograniczenia
integralnościowe
(c) Instytut Informatyki Politechniki Poznańskiej
6
Nazewnictwo
Relacja
nazwa relacji
nazwa atrybutu (kolumny)
PRACOWNICY
NAZWISKO
ETAT
ID_PRAC
ZATRUDNIONY
PLACA_POD
rekord/
krotka
KONOPKA
ASYSTENT
220
1-10-1993
480
dziedzina
atrybut (kolumna)
{ASYSTENT, ADIUNKT, PROFESOR}
(c) Instytut Informatyki Politechniki Poznańskiej
7
Podejście relacyjne
Własności bazy danych:
Własności relacji:
• Widziana jako zbiór relacji.
• W relacji nie ma żadnych
powtarzających się krotek.
• Nazwy relacji nie mogą się
powtarzać.
• W relacji nie ma atrybutów o
powtarzających się nazwach.
• Operatory: selekcja, projekcja,
iloczyn kartezjański, połączenie,
• Kolejność krotek w relacji
suma, przecięcie, różnica.
jest całkowicie nieokreślona.
• Dane nie są powiązane za pomocą
• Wartościami atrybutów są
żadnych wskaźników, powiązania
dane atomowe.
między danymi tylko przez
• Krotki są identyfikowane
porównywanie wartości atrybutów.
tylko i wyłącznie na
• Nieproceduralny język
podstawie wartości
komunikowania się z bazą danych.
atrybutów, lokalizacja krotki
nie ma żadnego wpływu na
• Użytkownik nie określa sposobu
tożsamość krotki.
dostępu do danych i nie zna ich
fizycznej organizacji.
(c) Instytut Informatyki Politechniki Poznańskiej
8
Schemat ćwiczebny
(c) Instytut Informatyki Politechniki Poznańskiej
9