KZ BD w04

background image

Bazy danych – wykład trzeci

Modelowanie schematu bazy danych

Konrad Zdanowski

Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

1 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

3

Wi ˛ezy w modelu ER

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

2 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna
Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

3 / 40

background image

Definicja 1

Niech R(A1, . . . , Ak ) b ˛edzie relacj ˛

a. Niech

A, B1, . . . , Bm ∈ {A1, . . . , Ak }.
Atrybut A

zale˙zy funkcyjnie

od B1, . . . , Bm, co oznaczamy

B1, . . . , Bm A

, je´sli ka˙zde dwie krotke o tych samych warto´sciach

atrybutów B1, . . . , Bm musz ˛

a posiada´c t ˛

a sam ˛

a warto´s´c atrybutu A.

Je´sli ka˙zdy z C1, . . . , Cr zale˙zy funkcyjnie od B1, . . . , Bm to piszemy
tak˙ze B1, . . . , Bm C1, . . . , Cr .

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

4 / 40

background image

Definicja 2

Niech R(A1, . . . , Ak ) b ˛edzie relacj ˛

a. Niech B1, . . . , Bm ∈ {A1, . . . , Ak }.

Zbiór atrybutów B1, . . . , Bm jest

kluczem

w R je´sli

1

ka˙zdy atrybut Ai zale˙zy funkcyjnie od B1, . . . , Bm,

2

powy˙zszej własno´sci nie ma ˙zaden wła´sciwy podzbiór B1, . . . , Bm.

Punkt 2 definicji klucza wymaga aby zbiór B1, . . . , Bm był minimalny.

Dana relacja mo˙ze posiada´c wiele kluczy.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

5 / 40

background image

Fakt 3

Je´sli B1, . . . , Bm jest kluczem R to w R

nie mog ˛

a wyst ˛

api´c dwie ró˙zne

krotki o tych samych warto´sciach B1, . . . , Bm.

Bycie kluczem jest własno´sci ˛

a schematu relacji w bazie danych a nie

własno´sci ˛

a konkretnej tabeli.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

6 / 40

background image

Przykład. Rozwa˙zmy tabel ˛e SAMOCHODY:

MARKA

KOLOR

NR. NADWOZIA

Syrenka

biały

1

Fiat 126p

czerwony

2

Wołga

czarny

3

Syrenka

kremowy

5

Cho´c KOLOR jednoznacznie identyfikuje krotk˛e w tabeli to nie jest to
klucz w tej tabeli.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

7 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna
Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

8 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna
Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

9 / 40

background image

Diagram ER przedstawia

encje

oraz

zwi ˛

azki

pomi ˛edzy nimi.

Ka˙zdy z tych obiektów mo˙ze posiada´c

atrybuty

.

W diagramie ER encje oznaczane s ˛

a przez prostok ˛

aty, zwi ˛

azki

przez romby, atrybuty przez elipsy.

Kraw ˛edzie ł ˛

acz ˛

ace encje i zwi ˛

azki oznaczaj ˛

a rodzaj zwi ˛

azku.

Atrybuty wchodz ˛

ace w skład klucza oznaczamy przez

podkre´slenie.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

10 / 40

background image

Przykład. Encja Osoba oraz jej atrybuty. Klucz głowny składa si ˛e z
jednego atrybutu id.

Osoba

imie

nazwisko

adres

telefon

id

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

11 / 40

background image

Przykład. Zwi ˛

azek“posiada”. Zwi ˛

azki mog ˛

a posiada´c swoje własne

atrybuty.

osoba

posiada

samochod

data_zakupu

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

12 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna
Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

13 / 40

background image

Definicja 4

Niech zwi ˛

azek R ł ˛

aczy encje E i F.

Je´sli ka˙zdy element z E wchodzi w zwi ˛

azek R z co najwy˙zej

jednym elementem F, to R jest zwi ˛

azkiem

wiele do jednego

od E

do F.

Je´sli R jest zwi ˛

azkiem wiele do jednego od E do F i od F do E, to

R jest zwi ˛

azkiem

jeden do jednego

.

Je´sli nie zachodzi ˙zaden z powy˙zszych przypadków, to R jest
zwi ˛

azkiem typu

wiele do wiele

.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

14 / 40

background image

Zwi ˛

azki wiele do jednego reprezentujemy przez strzałki.

osoba

posiada

samochod

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

15 / 40

background image

Je´sli ten sam zbiór encji bierze wielokrotnie udział w zwi ˛

azku to

rysujemy tyle linii, ile razy ten zbiór wyst ˛epuje.

Ka˙zde wyst ˛

apienie ma przypisan ˛

a inna

rol ˛e

, opisan ˛

a za pomoc ˛

a

etykiet.

osoba

malzenstwo

maz

zona

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

16 / 40

background image

Oczywi´scie, gdyby´smy modelowali zwi ˛

azki według prawa

Szariatu, to diagram ten wygl ˛

adałby tak:

osoba

malzenstwo

maz

zona

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

17 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna
Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

18 / 40

background image

Ka˙zdy zwi ˛

azek wieloargumentowy mo˙zemy przekształci´c na zbiór

zwi ˛

azków dwuargumentowych.

Aby to zrobi´c dodajemy jeden zbiór encji.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

19 / 40

background image

Przykład. Zamieniemy na zwi ˛

azki binarne wieloargumentowy zwi ˛

azek

mecz.

mecz

sedzia

druzyna

gospodarz

goscie

wynik

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

20 / 40

background image

mecz

sedziuje

sedzia

gospodarz

goscie

druzyna

wynik

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

21 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna
Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

22 / 40

background image

Je´sli pewne encje zawieraj ˛

a atrybuty nie wyst ˛epuj ˛

ace we

wszystkich elementach zbioru to mo˙zemy wyró˙zni´c je jako

podklasy

danej encji.

Encje takie ł ˛

aczymy specjalnym zwi ˛

azkiem

jest

(ang.

isa

).

Zwi ˛

azki takie maj ˛

a struktur ˛e drzewiast ˛

a z jednym korzeniem.

Encja podrz ˛edna ma wszystkie atrybutu i wchodzi we wszystkie
zwi ˛

azki, w które wchodzi encja nadrz ˛edna.

Klucz encji nadrzednej jest kluczem encji podrz ˛ednej.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

23 / 40

background image

Przykład. Podklasy

filmy

ISA

kreskowki

musicale

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

24 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna
Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

25 / 40

background image

Dlaczego wprowadza´c wi ˛ezy w modelu BD?

Wi ˛ezy s ˛

a jednym z elementów opisu modelowanego ´swiata.

Dobrze zdefiniowane wi ˛ezy po implementacji modelu pozwalaj ˛

a

SZBD optymalizowa´c wykonywanie zada ´n zwi ˛

azanych z BD.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

26 / 40

background image

Przykład. Je´sli tabele R i T posiadaj ˛

a klucze to poni˙zsze zapytanie

mo˙zna łatwo zooptymalizowa´c. Aby to zrobi´c SZBD musi posiada´c
informacje o kluczach w schemacie BD.

s e l e c t Rnazwa , T nazwa

from R, T
where Rklucz = T k l u c z ;

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

27 / 40

background image

Przykład. Łatwo zooptymalizowa´c tak˙ze

s e l e c t R . k l u c z , sum(R . wiek )

from R
group by R . k l u c z ;

jako

s e l e c t R . k l u c z , R . wiek

from R ;

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

28 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna

Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

29 / 40

background image

Zale˙zno´s´c wiele do jeden z E do F nie rozstrzyga, czy dla
ka˙zdego elementu E istnieje element w F b ˛ed ˛

acy z nim w relacji.

Istnienie odpowiedniego elementu z F modelujemy przez wi ˛ezy
integralno´sci referencyjnej.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

30 / 40

background image

Poznali´smy ju˙z niektóre wi ˛ezy w modelach BD.

klucze

typy zwi ˛

azków: wiele do jednego, jeden do jednego, ...

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

31 / 40

background image

Integralno´s´c referencyjn ˛

a oznaczamy za pomoc ˛

a zaokr ˛

aglonej strzałki.

prezes

zarzadza

firma

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

32 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna

Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

33 / 40

background image

Mo˙zemy ograniczy´c stopie ´n zwi ˛

azku R pomi ˛edzy encjami E i F

przez zaznaczenie z iloma maksymalnie elementami z F mo˙ze
wej´s´c w zwi ˛

azek element z E.

Oznaczamy to przez okre´slenie liczno´sci, ¬ n, nad lini ˛

a do

ł ˛

acz ˛

ac ˛

a zwi ˛

azek z dan ˛

a encj ˛

a.

Strzałka oznacza w tej konwencji ograniczenie ¬ 1 podczas gdy
strzałka zaokr ˛

aglona to ograniczenie = 1.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

34 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna
Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

35 / 40

background image

Definicja 5

Słab ˛

a encja to encja, której cz ˛e´s´c lub wszystkie atrybuty wchodz ˛

ace w

skład jej klucza s ˛

a atrybutami innych encji.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

36 / 40

background image

gatunek

nalezy

rodzaj

nazwa

nazwa

Element słabej encji musi wchodzi´c w zwi ˛

azki z innymi encjami, z

których bierze cz ˛e´sci składowe swojego klucza.

Zwi ˛

azki te i encje nazywamy pomocniczymi.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

37 / 40

background image

Niech R b ˛edzie zwi ˛

azkiem pomocniczym od słabej encji E do encji

pomocniczej F .

R musi by´c zwi ˛

azkiem wiele do jednego od E do F (tak˙ze jeden

do jednego).

Musi istnie´c integralno´s´c referencyjna mi ˛edzy E i F .

Atrybuty klucza F wchodz ˛

a w skład klucza E .

Je´sli E ł ˛

acz ˛

a z F inne zwi ˛

azki pomocnicze, to dla ka˙zdego

tworzymy oddzieln ˛

a kopi ˛e klucza E . Element słabej encji musi

wchodzi´c w zwi ˛

azki z innymi encjami, z których bierze cz ˛e´sci

składowe swojego klucza.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

38 / 40

background image

Outline

1

Zalezno´sci funkcyjne i klucze

2

Diagramy ER

Encje, zwi ˛

azki, atrybuty

Krotno´sci w zwi ˛

azkach

Zwi ˛

azki wieloargumentowe i zwi ˛

azki binarne

Podklasy encji

3

Wi ˛ezy w modelu ER

Integralno´s´c referencyjna
Wi ˛ezy stopni

4

Słabe encje

5

Zasady projektowania

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

39 / 40

background image

Projektuj ˛

ac model ER powinni´smy kierowa´c si ˛e zasadami:

1

Wierno´s´c – encje i ich atrybuty powinny odpowiada´c
rzeczywisto´sci. Zwi ˛

azki powinny mie´c rzeczywisty sens.

2

Brak nadmiarowosci – ka˙zda informacja powinna by´c
przechowywana tylko w jednym miejscu. Nie nale˙zy powiela´c
informacji.

3

Prostota – nie nale˙zy wprowadza´c zb ˛ednych encji, atrybutów lub
zwi ˛

azków.

Konrad Zdanowski ( Uniwersytet Kardynała Stefana Wyszy ´nskiego, Warszawa)

Bazy danych – wykład trzeci Modelowanie schematu bazy danych

40 / 40


Document Outline


Wyszukiwarka

Podobne podstrony:
KZ BD w09 id 256667 Nieznany
KZ BD w05
KZ BD w02
KZ BD w07 id 256666 Nieznany
KZ BD w14 2 id 256670 Nieznany
KZ BD w08
KZ BD w12 id 256669 Nieznany
KZ BD w03 2 id 256664 Nieznany
KZ BD w11 2 id 256668 Nieznany
KZ BD w06
KZ BD w09 id 256667 Nieznany

więcej podobnych podstron