Bazy danych

23
Bazy danych 07: Uproszczone ERD – związki binarne Krzysztof Stencel

description

Bazy danych. 07: Uproszczone ERD – związki binarne. Krzysztof Stencel. Model P. Chena jest super, ale.... Niestety jest zbyt bogaty i zbyt skomplikowany Nie rozumieją go niektórzy studenci informatyki, nie mówiąc już o przemyśle: - PowerPoint PPT Presentation

Transcript of Bazy danych

Page 1: Bazy danych

Bazy danych

07:

Uproszczone ERD – związki binarne

Krzysztof Stencel

Page 2: Bazy danych

Model P. Chena jest super, ale...

Niestety jest zbyt bogaty i zbyt skomplikowany Nie rozumieją go niektórzy studenci

informatyki, nie mówiąc już o przemyśle:– Pamiętamy bowiem, że jest on przeznaczony też

dla czytelników biznesowych

W praktyce stosuje się więc uproszczoną metodykę modelowania związków encji– są tylko związki dwuargumentowe między encjami

nie mające atrybutów.

Page 3: Bazy danych

Dobrze się to sprawdza w praktyce

Prostszy model pojęciowy jest lepiej przyswajalny przez wszystkich

Notacji jest cała masa, ale wszystkie mają:– Symbol encji w postaci zamkniętego kształtu– Atrybuty zapisywane we wnętrzu symbolu encji– Związki jako kreski łączące encje z rozmaitymi

dekoracjami Są one jednak bardzo podobne. Z badań archeologicznych wynika, że

wszystkie rozumiał już Homo erectus.

Page 4: Bazy danych

Bogactwo symboliki

PRACOWNIK# PESEL* imię* nazwisko* zarobeko prowizja

DZIAŁ# nr* nazwao lokal

UML* 0..1

IDEF1X

Martin

Designer

Page 5: Bazy danych

Wybór notacji

Podyktowany narzędziem – często tak jest Główna trudność to związki (ale do obejścia)

Opcjonalny Wymagany

Jeden Wiele

Page 6: Bazy danych

Przykład związku

SAMOCHÓD OSOBA

wiele

jedenwymagany opcjonalny

Każdy samochód należy do dokładnie jednej osoby.

Każda osoba może posiadać dowolnie wiele samochodów.

należy do posiada

Page 7: Bazy danych

Czytanie związku dla opornych

SAMOCHÓD OSOBA

Każdy samochód musi należeć do dokładnie jednej osoby.

należy do posiada

Page 8: Bazy danych

Czytanie związku dla opornych

OSOBA SAMOCHÓD

Każda osoba może posiadać dowolnie wiele samochodów.

należy doposiada

Page 9: Bazy danych

Uproszczona klasyfikacja związków

OSOBA SAMOCHÓDnależy doposiada

jeden-do-wiele

OSOBA SAMOCHÓDnależy doposiada

wiele-do-wiele

OSOBA SAMOCHÓDkierowany przezkieruje

jeden-do-jeden

Jeden-do-jeden to zwykłe zapis chwilowej sytuacji

Page 10: Bazy danych

Dodawanie związku

1. Stwierdź jego istnienie

2. Nazwij go (u nas: daj dwie nazwy)

3. Określ liczebność każdego końca

4. Określ wymagalność każdego końca

5. Przeczytaj go głośno w celu weryfikacji

6. Każ też czytać innym (zwłaszcza uczestnikom biznesowym)

Page 11: Bazy danych

Przydatna technika:macierz encja-encja

Las Leśnik Paśnik Gatunek

Las X X X X

Leśnik X

Paśnik X X

Gatunek X X

LEŚNIK PAŚNIKGATUNEK

LAS

Page 12: Bazy danych

Układ diagramu

Strony „wiele” związków zwrócone w jedną stronę, np. do góry i lewo lub skosem do góry i lewo

To pomaga czytać diagram, bo wskazuje tzw. encje referencyjne, czyli po stronie „najbardziej jeden”, czyli tych najważniejszych

Związek jeden-do-wiele bywa bowiem też nazywany master-detail (ogół-szczegół)

Tworzą się też łatwe do zapamiętania wzorce

Page 13: Bazy danych

Układ diagramu – przykład

DZIAŁ

KLIENT

TOWAR

ADRESZAMÓWIENIE

POZYCJAZAMÓWIENIA

Page 14: Bazy danych

Układ diagramu – wyjaśnienie

Zdechłe ptaszki lecą na wschód!

Page 15: Bazy danych

Atrybuty

Opcjonalne/wymagane/kluczowe (o/*/#) Czy są nierozkładalne?

– Adres Ulica, NrDomu, Miejscowość,...

Czy są jednokrotne? – Pozycja zamówienia nowa encja

Czy mają atrybuty? – Recenzja filmu nowa encja z treścią, autorem,...

Czy są wyliczane? – Wartość zamówienia wyliczana z pozycji i rabatu

Page 16: Bazy danych

Identyfikator

Pewien podzbiór atrybutówPlus ewentualnie związków (gdy encja słaba)

TOWAR# kod* nazwa

ZAMÓWIENIE# nr* data złożenia

POZYCJAZAMÓWIENIA* nr

Page 17: Bazy danych

Identyfikator mieszany

TOWAR# kod* nazwa

ZAMÓWIENIE# nr* data złożenia

POZYCJAZAMÓWIENIA# nr

Page 18: Bazy danych

Gdy pozycji na jeden towar jest wiele...

TOWAR# kod* nazwa

ZAMÓWIENIE# nr* data złożenia

ADRES

POZYCJAZAMÓWIENIA# nr

Page 19: Bazy danych

Lub też...

TOWAR# kod* nazwa

ZAMÓWIENIE# nr* data złożenia

ADRES

POZYCJAZAMÓWIENIA* nr

Page 20: Bazy danych

Hierarchie

INSTYTUT

KATEDRA

WYDZIAŁ

UCZELNIA

JEDNOSTKAORGANIZACYJNA

RODZAJ JEDNOSTKI

Encja potęgowa

Page 21: Bazy danych

Graf (sieć)

CZĘŚĆskłada się z

wchodzi w skład

Page 22: Bazy danych

Związek w grafie ma zwykle atrybuty

CZĘŚĆskłada się z wchodzi w skład

CZĘŚĆ

CZĘŚĆ CZĘŚĆ

INSTRUKCJAMONTAŻU

* ilośćzna

używana wpowstaje przez

CZĘŚĆ

INSTRUKCJAMONTAŻU

* ilość

zna

używana wpowstaje przez

Page 23: Bazy danych

Role

WYKŁADOWCA

SŁUCHACZKURS

prowadzonyprzez

prowadzi

uczęszcza

dla

KURS

OSOBA

prowadzonyprzez

prowadzi

dla

uczęszcza