Diagramy zwi
Diagramy zwi
ą
ą
zk
zk
ó
ó
w encji
w encji
dr in
dr in
ż
ż
. Krzysztof Urbaniak
. Krzysztof Urbaniak
Kolegium Nauk Spo
Kolegium Nauk Spo
ł
ł
ecznych i Administracji PW
ecznych i Administracji PW
2
2
Diagramy zwi
Diagramy zwi
ą
ą
zk
zk
ó
ó
w encji
w encji
ERD
ERD
-
-
Entity
Entity
Relation
Relation
Diagram
Diagram
Jest to model sieciowy opisuj
Jest to model sieciowy opisuj
ą
ą
cy jakie
cy jakie
dane przechowywane s
dane przechowywane s
ą
ą
w systemie i
w systemie i
jakie zachodz
jakie zachodz
ą
ą
mi
mi
ę
ę
dzy nimi zwi
dzy nimi zwi
ą
ą
zki
zki
Sk
Sk
ł
ł
adniki ERD:
adniki ERD:
–
–
encje
encje
–
–
zwi
zwi
ą
ą
zki
zki
3
3
Encje
Encje
Encja
Encja
(obiekt danych) jest to logicznie wyodr
(obiekt danych) jest to logicznie wyodr
ę
ę
bniony
bniony
zestaw element
zestaw element
ó
ó
w danych, kt
w danych, kt
ó
ó
ry reprezentuje w
ry reprezentuje w
systemie rzecz lub zdarzenie ze
systemie rzecz lub zdarzenie ze
ś
ś
wiata rzeczywistego
wiata rzeczywistego
Ka
Ka
ż
ż
da encja ma wi
da encja ma wi
ę
ę
cej ni
cej ni
ż
ż
jedno wyst
jedno wyst
ą
ą
pienie
pienie
(instancj
(instancj
ę
ę
)
)
Typ encji
Typ encji
-
-
reprezentuje wszystkie wyst
reprezentuje wszystkie wyst
ą
ą
pienia
pienia
danej encji
danej encji
Identyfikator
Identyfikator
(klucz) s
(klucz) s
ł
ł
u
u
ż
ż
y do jednoznacznego
y do jednoznacznego
identyfikowania encji, sk
identyfikowania encji, sk
ł
ł
ada si
ada si
ę
ę
z jednego lub wi
z jednego lub wi
ę
ę
cej
cej
atrybut
atrybut
ó
ó
w
w
4
4
Atrybuty
Atrybuty
Atrybut
Atrybut
-
-
element danych opisuj
element danych opisuj
ą
ą
cy encj
cy encj
ę
ę
Ka
Ka
ż
ż
da encja musi mie
da encja musi mie
ć
ć
przynajmniej jeden atrybut
przynajmniej jeden atrybut
Atrybuty przyjmuj
Atrybuty przyjmuj
ą
ą
warto
warto
ś
ś
ci, ka
ci, ka
ż
ż
de wyst
de wyst
ą
ą
pienie
pienie
encji ma okre
encji ma okre
ś
ś
lone warto
lone warto
ś
ś
ci dla wszystkich
ci dla wszystkich
atrybut
atrybut
ó
ó
w
w
Encja z pokazanymi
Encja z pokazanymi
atrybutami:
atrybutami:
Klient
• nazwisko
• imię
• adres
5
5
Nadtypy i podtypy encji
Nadtypy i podtypy encji
Wyst
Wyst
ę
ę
puj
puj
ą
ą
gdy dwie lub
gdy dwie lub
wi
wi
ę
ę
cej encje niewiele si
cej encje niewiele si
ę
ę
od siebie r
od siebie r
ó
ó
ż
ż
ni
ni
ą
ą
Nadtyp
Nadtyp
posiada atrybuty
posiada atrybuty
wsp
wsp
ó
ó
lne dla wszystkich
lne dla wszystkich
podtyp
podtyp
ó
ó
w
w
Podtypy posiadaj
Podtypy posiadaj
ą
ą
cechy
cechy
nadtypu plus r
nadtypu plus r
ó
ó
ż
ż
ni
ni
ą
ą
ce
ce
si
si
ę
ę
w
w
ł
ł
asne atrybuty
asne atrybuty
• imię
• nazwisko
• adres
pracownik
• stopień
• rodzaj
wojsk
pracownik
wojskowy
• stosunek
do służby
wojskowej
pracownik
cywilny
6
6
Zwi
Zwi
ą
ą
zek
zek
Zwi
Zwi
ą
ą
zek
zek
-
-
zbi
zbi
ó
ó
r powi
r powi
ą
ą
za
za
ń
ń
mi
mi
ę
ę
dzy encjami
dzy encjami
Rodzaje zwi
Rodzaje zwi
ą
ą
zk
zk
ó
ó
w:
w:
jeden
jeden
-
-
do
do
-
-
jednego
jednego
(1
(1
-
-
1)
1)
jeden
jeden
-
-
do
do
-
-
wielu
wielu
(1
(1
-
-
N)
N)
wiele
wiele
-
-
do
do
-
-
wielu
wielu
(N
(N
-
-
N)
N)
7
7
Notacje ERD
Notacje ERD
-
-
przyk
przyk
ł
ł
ady
ady
klient
zamówienie
składa
jest składane przez
klient
zamówienie
składa
1
N
8
8
Opis zwi
Opis zwi
ą
ą
zku (1)
zku (1)
Nazwa zwi
Nazwa zwi
ą
ą
zku odzwierciedla przyczyn
zku odzwierciedla przyczyn
ę
ę
jego
jego
powstania
powstania
Zwi
Zwi
ą
ą
zek mo
zek mo
ż
ż
e zawiera
e zawiera
ć
ć
atrybuty, czyli dane istniej
atrybuty, czyli dane istniej
ą
ą
ce
ce
wskutek istnienia zwi
wskutek istnienia zwi
ą
ą
zku
zku
Alternatyw
Alternatyw
ą
ą
dla atrybut
dla atrybut
ó
ó
w zwi
w zwi
ą
ą
zku s
zku s
ą
ą
asocjowane
asocjowane
typy obiekt
typy obiekt
ó
ó
w
w
(dane przeci
(dane przeci
ę
ę
cia), reprezentuj
cia), reprezentuj
ą
ą
ce
ce
zwi
zwi
ą
ą
zki, o kt
zki, o kt
ó
ó
rych chcemy zachowa
rych chcemy zachowa
ć
ć
pewne informacje
pewne informacje
klient
towar
zakup
N
N
9
9
Opis zwi
Opis zwi
ą
ą
zku (2)
zku (2)
Zwi
Zwi
ą
ą
zki wiele
zki wiele
-
-
do
do
-
-
wielu (N
wielu (N
-
-
N) zawieraj
N) zawieraj
ą
ą
ce
ce
atrybuty oraz asocjowane typy obiekt
atrybuty oraz asocjowane typy obiekt
ó
ó
w
w
mo
mo
ż
ż
na zast
na zast
ą
ą
pi
pi
ć
ć
zwykle wprowadzeniem
zwykle wprowadzeniem
dodatkowej encji po
dodatkowej encji po
łą
łą
czonej zwi
czonej zwi
ą
ą
zkami
zkami
jeden
jeden
-
-
do
do
-
-
wielu (1
wielu (1
-
-
N)
N)
klient
dokonuje
zakup
dotyczy
towar
10
10
Tworzenie ERD (1)
Tworzenie ERD (1)
Abstrahuje si
Abstrahuje si
ę
ę
od urz
od urz
ą
ą
dze
dze
ń
ń
do przechowywania
do przechowywania
danych
danych
Nie uwzgl
Nie uwzgl
ę
ę
dnia si
dnia si
ę
ę
danych, kt
danych, kt
ó
ó
re mog
re mog
ą
ą
zosta
zosta
ć
ć
obliczone lub wyprowadzone automatycznie
obliczone lub wyprowadzone automatycznie
Mo
Mo
ż
ż
e istnie
e istnie
ć
ć
wiele r
wiele r
ó
ó
ż
ż
nych zwi
nych zwi
ą
ą
zk
zk
ó
ó
w mi
w mi
ę
ę
dzy
dzy
dwoma encjami
dwoma encjami
student
zajęcia
jest zapisany na
zaliczył
11
11
Tworzenie ERD (2)
Tworzenie ERD (2)
Mog
Mog
ą
ą
istnie
istnie
ć
ć
zwi
zwi
ą
ą
zki mi
zki mi
ę
ę
dzy encjami tego
dzy encjami tego
samego typu
samego typu
Na poziomie logicznym dopuszcza si
Na poziomie logicznym dopuszcza si
ę
ę
zwi
zwi
ą
ą
zki
zki
mi
mi
ę
ę
dzy encjami wi
dzy encjami wi
ę
ę
cej ni
cej ni
ż
ż
dwu typ
dwu typ
ó
ó
w
w
pracownik
jest przełożonym
klient
kupuje
towar
akwizytor
12
12
Tworzenie ERD (3)
Tworzenie ERD (3)
Encje w ERD odpowiadaj
Encje w ERD odpowiadaj
ą
ą
najcz
najcz
ęś
ęś
ciej:
ciej:
–
–
magazynom danych w DFD
magazynom danych w DFD
–
–
powtarzaj
powtarzaj
ą
ą
cym si
cym si
ę
ę
grupom element
grupom element
ó
ó
w danych w
w danych w
s
s
ł
ł
owniku danych
owniku danych
Atrybutom encji odpowiadaj
Atrybutom encji odpowiadaj
ą
ą
dane elementarne
dane elementarne
w s
w s
ł
ł
owniku danych
owniku danych
Ka
Ka
ż
ż
dy element danych musi by
dy element danych musi by
ć
ć
pami
pami
ę
ę
tany tylko
tany tylko
w jednej encji
w jednej encji
Nie w
Nie w
łą
łą
cza si
cza si
ę
ę
w modelu logicznym kluczy
w modelu logicznym kluczy
obcych do atrybut
obcych do atrybut
ó
ó
w encji
w encji
13
13
ERD
ERD
vs
vs
. s
. s
ł
ł
ownik danych
ownik danych
Wszystkie obiekty wyst
Wszystkie obiekty wyst
ę
ę
puj
puj
ą
ą
ce w ERD powinny mie
ce w ERD powinny mie
ć
ć
swoje odzwierciedlenie w s
swoje odzwierciedlenie w s
ł
ł
owniku danych
owniku danych
Przyk
Przyk
ł
ł
ady zwi
ady zwi
ą
ą
zku w ERD i jego reprezentacji w
zku w ERD i jego reprezentacji w
s
s
ł
ł
owniku danych:
owniku danych:
Jest promotorem = *zwi
Jest promotorem = *zwi
ą
ą
zek* id
zek* id
-
-
profesora + {nr
profesora + {nr
-
-
albumu}
albumu}
Rejestruje = *zwi
Rejestruje = *zwi
ą
ą
zek*
zek*
pesel
pesel
+ 1{nr
+ 1{nr
-
-
rejestracyjny}
rejestracyjny}
profesor
jest promotorem
student
właściciel
rejestruje
samochód