postulaty Codda

background image

Podejście relacyjne

Podejście relacyjne

Podejście relacyjne

Podejście relacyjne

opiera się na wykorzystaniu

opiera się na wykorzystaniu

do przedstawiania danych modelu relacyjnego i

do przedstawiania danych modelu relacyjnego i

zarządzania nimi matematycznego modelu

zarządzania nimi matematycznego modelu

zawierającego algebrę relacyjną i rachunek

zawierającego algebrę relacyjną i rachunek

relacji.

relacji.

Ogólnie system zarządzania relacyjną bazą danych:

Ogólnie system zarządzania relacyjną bazą danych:

Reprezentuje całą informację z bazie danych za

Reprezentuje całą informację z bazie danych za

pomocą tabel.

pomocą tabel.

Wspiera trzy podstawowe operacje relacyjne:

Wspiera trzy podstawowe operacje relacyjne:

wybór (selekcja, ang. selection), rzutowanie

wybór (selekcja, ang. selection), rzutowanie

(projekcja, ang. projection) i złączanie (ang. join).

(projekcja, ang. projection) i złączanie (ang. join).

Szczegółowe wymagania określa dwanaście tzw.

Szczegółowe wymagania określa dwanaście tzw.

„praw Codda”.

„praw Codda”.

background image

Między innymi system w pełni relacyjny musi:

Między innymi system w pełni relacyjny musi:

Reprezentować całą informację zawartą w bazie w

Reprezentować całą informację zawartą w bazie w

postaci tabel.

postaci tabel.

Utrzymywać niezależność logicznej reprezentacji danych

Utrzymywać niezależność logicznej reprezentacji danych

od fizycznego sposobu ich przechowywania.

od fizycznego sposobu ich przechowywania.

Używać języka wysokiego poziomu w celu

Używać języka wysokiego poziomu w celu

strukturalizacji, wyszukiwania i zmiany informacji w

strukturalizacji, wyszukiwania i zmiany informacji w

bazie danych.

bazie danych.

Wspierać podstawowe operacje relacyjne i takie

Wspierać podstawowe operacje relacyjne i takie

operacje teorii zbiorów, jak suma, przecięcie, różnica i

operacje teorii zbiorów, jak suma, przecięcie, różnica i

dzielenie.

dzielenie.

Wspierać perspektywy umożliwiające użytkownikowi

Wspierać perspektywy umożliwiające użytkownikowi

określenie alternatywnych sposobów oglądania danych

określenie alternatywnych sposobów oglądania danych

w tabelach.

w tabelach.

Dostarczać metodę pozwalającą odróżniać wartości

Dostarczać metodę pozwalającą odróżniać wartości

nieznane (null) od zera lub miejsca niewypełnionego.

nieznane (null) od zera lub miejsca niewypełnionego.

Wspierać mechanizmy zapewniające spójność, prawa

Wspierać mechanizmy zapewniające spójność, prawa

dostępu, transakcje i odzyskiwanie danych.

dostępu, transakcje i odzyskiwanie danych.

background image

Postulaty Codda dla relacyjnej

Postulaty Codda dla relacyjnej

bazy danych (1985 rok)

bazy danych (1985 rok)

1.

1.

Postulat informacyjny

Postulat informacyjny

: na poziomie

: na poziomie

logicznym dane są reprezentowane

logicznym dane są reprezentowane

wyłącznie za pomocą tabel.

wyłącznie za pomocą tabel.

2.

2.

Postulat dostępu

Postulat dostępu

: do każdej pojedynczej

: do każdej pojedynczej

danej jest dostęp za pomocą tabel,

danej jest dostęp za pomocą tabel,

kolumn i wartości kluczy głównych.

kolumn i wartości kluczy głównych.

3.

3.

Postulat wartości null

Postulat wartości null

: w systemie jest

: w systemie jest

dostępna specjalna wartość

dostępna specjalna wartość

reprezentująca wartość brakującą,

reprezentująca wartość brakującą,

nieokreśloną lub nieznaną; jest to

nieokreśloną lub nieznaną; jest to

wartość różna od wszystkich konkretnych

wartość różna od wszystkich konkretnych

wartości, jak np. pusty napis lub zero.

wartości, jak np. pusty napis lub zero.

background image

4.

4.

Postulat słownika danych

Postulat słownika danych

: informacje o

: informacje o

obiektach bazy danych tworzących jej

obiektach bazy danych tworzących jej

schemat są na poziomie logicznym

schemat są na poziomie logicznym

zgrupowane w tabele, które są dostępne w

zgrupowane w tabele, które są dostępne w

taki sam sposób, jak każde inne dane.

taki sam sposób, jak każde inne dane.

5.

5.

Postulat pełnego języka danych

Postulat pełnego języka danych

: w systemie

: w systemie

jest zaimplementowany pełny język

jest zaimplementowany pełny język

obejmujący definiowanie danych,

obejmujący definiowanie danych,

perspektyw, więzów spójności, operowanie

perspektyw, więzów spójności, operowanie

danymi (interaktywne lub przez program),

danymi (interaktywne lub przez program),

nadawanie uprawnień użytkownikom,

nadawanie uprawnień użytkownikom,

transakcje.

transakcje.

Postulaty Codda dla relacyjnej

Postulaty Codda dla relacyjnej

bazy danych (1985 rok)

bazy danych (1985 rok)

background image

6.

6.

Postulat modyfikowania bazy danych przez

Postulat modyfikowania bazy danych przez

perspektywy

perspektywy

: system umożliwia modyfikowanie

: system umożliwia modyfikowanie

danych za pomocą perspektyw, w przypadku

danych za pomocą perspektyw, w przypadku

gdy taka modyfikacja jest semantycznie

gdy taka modyfikacja jest semantycznie

sensowna.

sensowna.

7.

7.

Postulat modyfikowania danych na wysokim

Postulat modyfikowania danych na wysokim

poziomie abstrakcji

poziomie abstrakcji

:

:

system umożliwia

system umożliwia

modyfikowanie danych za pomocą operacji,

modyfikowanie danych za pomocą operacji,

których argumentami są tabele (perspektywy),

których argumentami są tabele (perspektywy),

a więc w szczególności nie tylko w sposób

a więc w szczególności nie tylko w sposób

nawigacyjny.

nawigacyjny.

8.

8.

Fizyczna niezależność danych

Fizyczna niezależność danych

: zmiany w

: zmiany w

metodach przechowywania danych i dostępu

metodach przechowywania danych i dostępu

do nich nie mają wpływu na aplikacje.

do nich nie mają wpływu na aplikacje.

Postulaty Codda dla relacyjnej

Postulaty Codda dla relacyjnej

bazy danych (1985 rok)

bazy danych (1985 rok)

background image

9.

9.

Logiczna niezależność danych

Logiczna niezależność danych

: zmiany w

: zmiany w

tabelach zachowujące informacje i

tabelach zachowujące informacje i

dopuszczalne semantycznie nie mają

dopuszczalne semantycznie nie mają

wpływu na aplikacje.

wpływu na aplikacje.

10.

10.

Niezależność więzów spójności

Niezależność więzów spójności

: więzy

: więzy

spójności są definiowane w języku bazy

spójności są definiowane w języku bazy

danych (nie muszą być wyrażane w

danych (nie muszą być wyrażane w

aplikacji).

aplikacji).

Postulaty Codda dla relacyjnej

Postulaty Codda dla relacyjnej

bazy danych (1985 rok)

bazy danych (1985 rok)

background image

11.

11.

Niezależność dystrybucyjna

Niezależność dystrybucyjna

: system (i jego

: system (i jego

język) umożliwiają używanie danych

język) umożliwiają używanie danych

zapisanych w różnych fizycznie miejscach (w

zapisanych w różnych fizycznie miejscach (w

różnych węzłach sieci).

różnych węzłach sieci).

12.

12.

Zabezpieczenie przed operacjami na niższych

Zabezpieczenie przed operacjami na niższych

poziomach abstrakcji

poziomach abstrakcji

: jeżeli system umożliwia

: jeżeli system umożliwia

operacje na niższych poziomach abstrakcji,

operacje na niższych poziomach abstrakcji,

nie mogą one naruszać relacyjnego modelu

nie mogą one naruszać relacyjnego modelu

danych (w tym pomijać ograniczeń

danych (w tym pomijać ograniczeń

określonych przez więzy spójności).

określonych przez więzy spójności).

Postulaty Codda dla relacyjnej

Postulaty Codda dla relacyjnej

bazy danych (1985 rok)

bazy danych (1985 rok)

background image

Postulat 1.

Postulat 1.

Model relacyjny - wszystko jest tabelą

Model relacyjny - wszystko jest tabelą

Tabela

Tabela

podzielona jest na poziome

podzielona jest na poziome

wiersze

wiersze

i

i

pionowe

pionowe

kolumny

kolumny

.

.

Alternatywne pojęcia (niemal synonimy):

Alternatywne pojęcia (niemal synonimy):

Tabela – relacja – plik.

Tabela – relacja – plik.

Wiersz – krotka (wystąpienie encji) – rekord.

Wiersz – krotka (wystąpienie encji) – rekord.

Kolumna – atrybut (właściwość) – pole.

Kolumna – atrybut (właściwość) – pole.

background image

Zbiór powiązanych ze sobą tabel to

Zbiór powiązanych ze sobą tabel to

baza

baza

danych

danych

.

.

Tabela to zbiór wierszy, czyli wystąpień encji.

Tabela to zbiór wierszy, czyli wystąpień encji.

Encje charakteryzują własności, czyli wartości w

Encje charakteryzują własności, czyli wartości w

poszczególnych kolumnach.

poszczególnych kolumnach.

W relacyjnej bazie danych występują dwa

W relacyjnej bazie danych występują dwa

rodzaje tabel:

rodzaje tabel:

Tabele użytkownika.

Tabele użytkownika.

Tabele systemowe (katalog, słownik systemu)

Tabele systemowe (katalog, słownik systemu)

– czwarte prawo Codda.

– czwarte prawo Codda.

Postulat 1.

Postulat 1.

background image

Postulat 3.

Postulat 3.

Wartość nieokreślona (null)

Wartość nieokreślona (null)

Wartość

Wartość

null

null

(rozwiązanie problemu

(rozwiązanie problemu

brakującej informacji) oznacza brak danej

brakującej informacji) oznacza brak danej

(jest ona nieznana lub nie wprowadzona).

(jest ona nieznana lub nie wprowadzona).

Stosowanie null zmienia tradycyjną logikę

Stosowanie null zmienia tradycyjną logikę

dwuwartościową (tak/nie) na logikę

dwuwartościową (tak/nie) na logikę

trójwartościową (tak/nie/być może) –

trójwartościową (tak/nie/być może) –

stanowi integralną część standardu

stanowi integralną część standardu

języka SQL.

języka SQL.

background image

Postulat 5.

Postulat 5.

Język wysokiego poziomu

Język wysokiego poziomu

System relacyjny wymaga

System relacyjny wymaga

pełnego podjęzyka

pełnego podjęzyka

danych

danych

(np. SQL).

(np. SQL).

Zakres zastosowań pełnego podjęzyka danych:

Zakres zastosowań pełnego podjęzyka danych:

Operowanie danymi (wyszukiwanie i

Operowanie danymi (wyszukiwanie i

modyfikowanie).

modyfikowanie).

Definiowanie danych.

Definiowanie danych.

Administrowanie danymi.

Administrowanie danymi.

Każda operacja języka wyrażona jest

Każda operacja języka wyrażona jest

instrukcją

instrukcją

lub

lub

poleceniem

poleceniem

. Operacje wyszukiwanie

. Operacje wyszukiwanie

nazywane są często

nazywane są często

zapytaniami

zapytaniami

.

.

background image

SQL jako podjęzyk danych

SQL jako podjęzyk danych

Język SQL jest

Język SQL jest

językiem nieproceduralnym

językiem nieproceduralnym

, tzn.

, tzn.

pozwala na określenie warunków, jakie ma spełniać

pozwala na określenie warunków, jakie ma spełniać

wynik bez podawania szczegółów dotyczących

wynik bez podawania szczegółów dotyczących

sposobu realizacji.

sposobu realizacji.

Operacje wyszukiwania powodują utworzenie i

Operacje wyszukiwania powodują utworzenie i

wyprowadzenie tabel wynikowych zwanych

wyprowadzenie tabel wynikowych zwanych

tabelami

tabelami

wyprowadzanymi

wyprowadzanymi

na podstawie

na podstawie

tabel bazowych

tabel bazowych

zawierających surowe dane.

zawierających surowe dane.

Operacje relacyjne:

Operacje relacyjne:

Rzutowanie – wybór kolumn (określa podzbiór

Rzutowanie – wybór kolumn (określa podzbiór

kolumn).

kolumn).

Wybór – wybór wierszy (określa podzbiór wierszy).

Wybór – wybór wierszy (określa podzbiór wierszy).

Złączanie – utworzenie jednej tabeli wynikowej na

Złączanie – utworzenie jednej tabeli wynikowej na

podstawie kilku tabel bazowych.

podstawie kilku tabel bazowych.

background image

Postulat 6.

Postulat 6.

Różne sposoby oglądania danych

Różne sposoby oglądania danych

Perspektywa

Perspektywa

(tabela wirtualna, tabela

(tabela wirtualna, tabela

pochodna) – tabela utworzona na podstawie

pochodna) – tabela utworzona na podstawie

jednej lub kilku tabel bazowych, która umożliwia

jednej lub kilku tabel bazowych, która umożliwia

inny, alternatywny sposób przeglądania danych.

inny, alternatywny sposób przeglądania danych.

Dane oglądane w perspektywie nie są

Dane oglądane w perspektywie nie są

zapamiętane w ten sposób w bazie danych (nie

zapamiętane w ten sposób w bazie danych (nie

jest ona kopią danych).

jest ona kopią danych).

Zmiana danych w perspektywie powoduje

Zmiana danych w perspektywie powoduje

(zwykle) ich modyfikację w rzeczywistości

(zwykle) ich modyfikację w rzeczywistości

(prawo Codda).

(prawo Codda).

background image

Postulat 7.

Postulat 7.

Bezpieczeństwo

Bezpieczeństwo

sprowadza się do kontroli kto

sprowadza się do kontroli kto

używa jakich danych i w jakiem celu. Podjęzyk

używa jakich danych i w jakiem celu. Podjęzyk

danych powinien umożliwić realizację tej

danych powinien umożliwić realizację tej

kontroli. Poziom kontroli zależy od SZBD (na

kontroli. Poziom kontroli zależy od SZBD (na

poziomie baz danych, tabel, kolumn, wierszy).

poziomie baz danych, tabel, kolumn, wierszy).

Rodzaje użytkowników:

Rodzaje użytkowników:

Zwykły użytkownik (użytkownik) – prawa

Zwykły użytkownik (użytkownik) – prawa

wynikające z nadanych mu uprawnień.

wynikające z nadanych mu uprawnień.

Użytkownik uprzywilejowany – właściciel baz

Użytkownik uprzywilejowany – właściciel baz

danych lub obiektów bazodanowych (osoba

danych lub obiektów bazodanowych (osoba

tworząca te obiekty).

tworząca te obiekty).

Administrator systemu (administrator bazy

Administrator systemu (administrator bazy

danych).

danych).

background image

Postulat 8. i 9.

Postulat 8. i 9.

Niezależność danych

Niezależność danych

Niezależność danych

Niezależność danych

jest celem SZBD w modelu

jest celem SZBD w modelu

relacyjnym.

relacyjnym.

Poziomy niezależności:

Poziomy niezależności:

Fizyczna niezależność danych (reprezentacja

Fizyczna niezależność danych (reprezentacja

danych widziana przez użytkownika jest

danych widziana przez użytkownika jest

całkowicie niezależna od fizycznego sposobu

całkowicie niezależna od fizycznego sposobu

pamiętania danych – wydzielenie metod

pamiętania danych – wydzielenie metod

dostępu).

dostępu).

Logiczna niezależność danych (reprezentacja

Logiczna niezależność danych (reprezentacja

danych widziana przez użytkownika jest

danych widziana przez użytkownika jest

niezależna od programów użytkowych).

niezależna od programów użytkowych).

background image

Postulat 10.

Postulat 10.

Spójność

Spójność

(integralność) to poprawność danych w bazie

(integralność) to poprawność danych w bazie

danych. Ograniczenia (tzw. więzy) dotyczące

danych. Ograniczenia (tzw. więzy) dotyczące

spójności powinny być definiowane w tym samym

spójności powinny być definiowane w tym samym

podjęzyku danych, co reszta systemu i zapamiętane

podjęzyku danych, co reszta systemu i zapamiętane

w słowniku bazy danych (prawo Codda).

w słowniku bazy danych (prawo Codda).

Metody zapewnienia spójności:

Metody zapewnienia spójności:

Zarządzanie transakcjami – polecenie podjęzyka

Zarządzanie transakcjami – polecenie podjęzyka

danych musi być wykonane w całości, albo wcale

danych musi być wykonane w całości, albo wcale

(żadna jego część).

(żadna jego część).

Spójność encji – ograniczenia dziedziny, ograniczenia

Spójność encji – ograniczenia dziedziny, ograniczenia

na wartości klucza głównego, dodatkowe warunki.

na wartości klucza głównego, dodatkowe warunki.

Spójność odwołań – zgodność fragmentów informacji

Spójność odwołań – zgodność fragmentów informacji

powtarzających się w kilku tabelach.

powtarzających się w kilku tabelach.

Dodatkowe ograniczenia (np. wyzwalacze).

Dodatkowe ograniczenia (np. wyzwalacze).


Document Outline


Wyszukiwarka

Podobne podstrony:
postulaty
Postulat Metodologicznej Niewiedzy zaklada
Postulaty Kocha
POSTULATY SZKOŁY HUMANITARNEJ W DZIEDZINIE PRAWA KARNEGO, Prawo UwB
Postulaty Bohra, TŻ, SEMI, SEM II, fizyka
02piąty postulat euklidesa
Postulaty adresowane do rodziców i nauczycieli, PRZEDSZKOLE, Współpraca z rodzicami w przedszkolu
pozyt - postulat utylitaryzmu literatury, WYPRACOWANIA, ZADANIA
Ekspert o polskich postulatach i celach reformy rynku cukru
21 POSTULATOW Międzyzakładowego Komitetu Strajkowego Stoczni Gdańskiej
Model budowy atomu wodoru postulaty Bohra
108 Postulatów Nowej Ziemi
22a, „JEŚLI MASZ DWIE DROGI DO WYBORU WYBIERAJ ZAWSZE TRUDNIEJSZĄ DLA SIEBIE” - POSTULAT
Postulaty?C w gospodarce
kartkówka fizyka, postulaty bohra
Postulaty wychowania przez sztukę a wychowanie plastyczne, STUDIA PEDAGOGIKA OPIEKUŃCZO - RESOCJALIZ
postulaty
Przesłanki, postulaty i kierunki rekultywacji gleb
pragmatycystyczny postulat, STUDIA, Filozofia nauki

więcej podobnych podstron