WYKLAD04

ebook / download / pobieranie / do ÂściÂągnięcia / pdf

WYKLAD04, Studia, I stopnia inżynierskie Elektrotechnika, Dodatkowe materiały, Złota płytka, studia, ...

RELACYJNE OBIEKTY DANYCH: TERMINOLOGIA
Formalny termin relacyjny
Nieformalny równoważnik
relacja
krotka
liczebność tabeli
atrybut
stopień tabeli
klucz główny
dziedzina
tabela
wiersz
liczba wierszy
kolumna lub pole
liczba kolumn
jednoznaczny identyfikator
zbiór dopuszczalnych wartości
Relacja
jest w nieformalny sposób nazywana tabelą.
Krotka
(tuple) jest to wiersz w takiej tabeli,
atrybut
zaś odpowiada kolumnie. Liczba krotek w tabeli to
liczebność tabeli
(cardinality). Liczba atrybutów to
stopień tabeli
(degree).
Klucz główny
(primary key), zwany też kluczem pierwotnym, jest to
jednoznaczny identyfikator w tabeli. Jest to kolumna (lub kombinacja kolumn) taka, że żadne dwa
wiersze z tabeli, w dowolnej chwili, nie mają tej samej wartości w tej kolumnie (lub kombinacji kolumn).
Dziedzina
jest to zbiór dopuszczalnych wartości, z których pochodzą konkretne wartości określonych
atrybutów danych relacji.
Krzysztof Woźniak, Poznań 2001
BAZY DANYCH: Relacyjne obiekty danych. Dziedziny i relacje...1
DZIEDZINY
Najmniejsza semantyczna jednostka danych,
którą jest pojedyncza wartość danych, jest nazywana
skalarem
(lub wartością atomową).
Dziedzina
(domain) jest definiowana jako zbiór wartości
skalarnych tego samego typu.
Porównania ograniczone dziedzinami
(przykład znaczenia dziedzin):
SELECT …
FROM
Dostawcy
,
Magazyny
porównanie atrybutów
z tej samej dziedziny
WHERE
Dostawcy.miejscowo
ść
=
Magazyny.miejscowo
ść
;
SELECT …
FROM
Dostawcy
,
Magazyny
porównanie atrybutów
z różnych dziedzin
WHERE
Dostawcy.nazwisko
=
Magazyny.pojemno
ść
;
Definiowanie dziedziny:
CREATE DOMAIN
nazwa-dziedziny Typ-danych;
Usuwanie dziedziny:
DESTROY DOMAIN
nazwa-dziedziny;
np.
CREATE DOMAIN
nazwiska
CHAR(20);
DESTROY DOMAIN
nazwiska
;
SQL
Definiowanie dziedziny:
CREATE DOMAIN
nazwa-dziedziny
[AS]
Typ-danych;
Usuwanie dziedziny:
DROP DOMAIN
nazwa-dziedziny;
Krzysztof Woźniak, Poznań 2001
BAZY DANYCH: Relacyjne obiekty danych. Dziedziny i relacje...2
RELACJE
Zmienna relacji
to nazwany obiekt, którego wartość zmienia się w czasie. Wartość takiej zmiennej w
danej chwili jest nazywana
wartością relacji.
zmienna relacji
DZIAŁY
ID_działu
nazwa_działu
budżet
D1
Dział Handlowy
10M
wartość relacji
D2
Dział Rozwoju
12M
D3
Dział Badań
5M
Definiowanie relacji:
CREATE BASE RELATION
nazwa-relacji-podstawowej ...;
Usuwanie relacji:
DESTROY BASE RELATION
nazwa-relacji-podstawowej;
np.
CREATE BASE RELATION
Dostawcy
...;
DESTROY BASE RELATION
Dostawcy
;
SQL
Definiowanie tablicy:
CREATE TABLE
nazwa-tablicy ...;
Usuwanie tablicy:
DROP TABLE
nazwa-tablicy;
Krzysztof Woźniak, Poznań 2001
BAZY DANYCH: Relacyjne obiekty danych. Dziedziny i relacje...3
WARTOŚĆ RELACJI
Relacja (wartość relacji),
np. R, na zbiorze niekoniecznie różnych dziedzin
D1, D2,
...,
Dn -
składa się
z dwóch części:
nagłówka (heading)
i
treści (body).
ID_działu
nazwa_działu
budżet
nagłówek
DZIAŁY
D1
Dział Handlowy
10M
treść
D2
Dział Rozwoju
12M
D3
Dział Badań
5M
Nagłówek
składa się z ustalonego zbioru
atrybutów,
a ściślej rzecz biorąc, par
<nazwa-atrybutu:nazwa-dziedziny>,
{ <A1:D1>, <A2:D2>, .... <An:Dn> }
takich, że każdy atrybut
Aj
odpowiada dokładnie jednej wyjściowej dziedzinie
Dj
(j=1,2,3,...,n).
Wszystkie nazwy atrybutów A1, A2, ..., An są różne.
Treść
składa się z
krotek
(tuples). Każda krotka z kolei jest zbiorem par
<nazwa-atrybutu:wartość-atrybutu>
{ <A1:vi1>, <A2:vi2>, .... <An:vin> }
(i = 1,2,...,m, gdzie m jest liczbą krotek w zbiorze). W każdej takiej krotce jest jedna taka para <Aj:vij>
typu <nazwa-atrybutu:wartość-atrybutu> dla każdego atrybutu Aj w nagłówku. Dla każdej danej pary
<Aj:vij>, vij jest wartością z konkretnej dziedziny Dj stowarzyszonej z atrybutem Aj.
Liczby
m
i
n
są nazywane odpowiednio
liczebnością i stopniem
relacji R.
Krzysztof Woźniak, Poznań 2001
BAZY DANYCH: Relacyjne obiekty danych. Dziedziny i relacje...4
WARTOŚĆ RELACJI
Przykład: Tabela DOSTAWCY jako obraz relacji
DOSTAWCY
Tabela DOSTAWCY ma cztery dziedziny wyjściowe:
dziedzinę identyfikatorów dostawców (Id), dziedzinę
nazwisk (Nazwiska), dziedzinę wartości statusu (Status) i
dziedzinę nazw miejscowości (Miejscowości).
ID_dostawcy
nazwisko
status
miejscowość
D1
Czyż
20
Warszawa
D2
Kaleta
10
Łódź
D3
Szozda
30
Warszawa
D4
Ciszewski
20
Płońsk
Tabela posiada wiersz z nazwami kolumn (nagłówek) i
zbiór wierszy (treść).
D5
Zybert
30
Konin
Nazwy kolumn (nagłówek):
{<ID_dostawcy:Id>, <nazwisko:Nazwiska>, <status:Status>, <miejscowość:Miejscowości>}
Zbiór wierszy (treść):
{ (<ID_dostawcy:’D1’>, <nazwisko:’Czyż’>, <status:’20’>, <miejscowość:’Warszawa’>),
(<ID_dostawcy:’D2’>, <nazwisko:’Kaleta’>, <status:’10’>, <miejscowość:’Łódź’>),
(<ID_dostawcy:’D3’>, <nazwisko:’Szozda’>, <status:’30’>, <miejscowość:’Warszawa’>),
(<ID_dostawcy:’D4’>, <nazwisko:’Ciszewski’>, <status:’20’>, <miejscowość:’Płońsk’>),
(<ID_dostawcy:’D5’>, <nazwisko:’Zybert’>, <status:’30’>, <miejscowość:’Konin’>} }
UWAGA! Relacja
jest to, zgodnie z podaną wcześniej definicją, raczej abstrakcyjny obiekt,
tabela
zaś
stanowi konkretny obraz (zwykle przedstawiony na papierze) tego abstrakcyjnego obiektu.
Krzysztof Woźniak, Poznań 2001
BAZY DANYCH: Relacyjne obiekty danych. Dziedziny i relacje...5