Bazy danych [ skrypty na wykłady u prof. Z. Królikowski], Bazy danych 2 WSKiZ, TRANSFORMACJA DO SCHEMATU RELACYJNEGO


TRANSFORMACJA DO SCHEMATU RELACYJNEGO - pojęcia podstawowe

Repetytorium - pojęcia podstawowe relacyjnego modelu danych

Transformacja do schematu relacyjnego - scenariusz

1. Transformacja encji

2. Transformacja związków 1:1

3. Transformacja związków 1:N

4. Transformacja związków M:N i ternarnych

Transformacja encji


0x01 graphic

PRACOWNICY (

id_pracownika PRIMARY KEY,

imię NOT NULL,

nazwisko NOT NULL,

adres_ulica NULL,

adres_miasto NULL )

Zasady transformacji:


Transformacja związków 1:1

Związek 1:1 jednostronnie obligatoryjny


0x01 graphic

SPRZEDAŻE (

id_sprzedaży PRIMARY KEY,

data_sprzedaży NOT NULL,

wartość NOT NULL )

ZWROTY (

id_zwrotu PRIMARY KEY,

data_zwrotu NOT NULL,

przyczyna NULL

id_sprzedaży NOT NULL

REFERENCES sprzedaże(id_sprzedaży) )

Zasady transformacji:


Transformacja związków 1:1

Związek 1:1 dwustronnie opcjonalny

0x01 graphic

Zasady transformacji:

Tworzymy klucz obcy w relacji o mniejszej liczbie krotek, na podstawie klucza podstawowego drugiej relacji.

Na klucz obcy nakładamy ograniczenie referencyjne.

Transformacja związków 1:N


0x01 graphic

STANOWISKA (

nazwa PRIMARY KEY,

płaca_min NOT NULL,

płaca_max NULL )

PRACOWNICY (

id_pracownika PRIMARY_KEY,

imię NOT NULL,

nazwisko NOT NULL,

stanowisko NOT NULL

REFERENCES stanowiska(nazwa) )

Transformacja związków 1:N - cd.

Zasady transformacji:


Transformacja związków M:N

0x01 graphic

PRACOWNICY (

id_pracownika PRIMARY_KEY,

imię NOT NULL, nazwisko NOT NULL )

PROJEKTY (

nazwa_proj PRIMARY KEY,

data_rozpocz NOT NULL, data_zakoncz NULL )

UDZIAŁY_W_PROJ (

id_pracownika REFERENCES pracownicy(id_pracownika),

nazwa_proj REFERENCES projekty(nazwa_proj),

PRIMARY KEY(id_pracownika, nazwa_proj) )

Transformacja związków M:N

Zasady transformacji:

Transformacja hierarchii encji - do trzech relacji

Hierarchia encji:

0x01 graphic

Schematy relacji:

PRACOWNICY (id_prac PRIMARY KEY,

atrybuty_wspólne,

typ_prac NOT NULL )

PRACOWNICY_KRAJ (

id_prac PRIMARY KEY,

atr_specyf_kraj )

PRACOWNICY_ZAGR (

id_prac PRIMARY KEY,

atr_specyf_zagr )

Transformacja hierarchii encji - do trzech relacji

Zasady transformacji:

Perspektywy dla specjalizacji:

PRACOWNICY_KRAJOWI

(id_prac, atrybuty_wspólne, atr_specyf_kraj) AS

select id_prac, atrybuty_wspólne, atr_specyf_kraj

from PRACOWNICY p, PRACOWNICY_KRAJ pk

where p.id_prac = pk.id_prac;

PRACOWNICY_ZAGRANICZNI

(id_prac, atrybuty_wspólne, atr_specyf_zagr) AS

select id_prac, atrybuty_wspólne, atr_specyf_zagr

from PRACOWNICY p, PRACOWNICY_ZAGR pz

where p.id_prac = pz.id_prac;

Transformacja hierarchii encji - do dwóch relacji

Hierarchia encji:

0x01 graphic

Schematy relacji:

PRACOWNICY_KRAJ (

id_prac PRIMARY KEY,

atrybuty_wspólne,

atr_specyf_kraj )

PRACOWNICY_ZAGR (

id_prac PRIMARY KEY,

atrybuty_wspólne,

atr_specyf_zagr )

Transformacja hierarchii encji - do dwóch relacji

Zasady transformacji:

Perspektywa dla generalizacji:

PRACOWNICY

(id_prac, atrybuty_wspólne, typ_prac) AS

select id_prac, atrybuty_wspólne, 'KRAJ'

from PRACOWNICY_KRAJ

union

select id_prac, atrybuty_wspólne, 'ZAGR'

from PRACOWNICY_ZAGR;

Transformacja hierarchii encji - do jednej relacji

Hierarchia encji:

0x01 graphic

Schematy relacji:

PRACOWNICY (

id_prac PRIMARY KEY,

atrybuty_wspólne,

atr_specyf_kraj NULL,

atr_specyf_zagr NULL,

typ_prac NOT NULL )

Transformacja hierarchii encji - do jednej relacji

Zasady transformacji:

Perspektywy dla specjalizacji:

PRACOWNICY_KRAJOWI

(id_prac, atrybuty_wspólne, atr_specyf_kraj) AS

select id_prac, atrybuty_wspólne, atr_specyf_kraj

from PRACOWNICY

where typ_prac = 'KRAJ';

PRACOWNICY_ZAGRANICZNI

(id_prac, atrybuty_wspólne, atr_specyf_zagr) AS

select id_prac, atrybuty_wspólne, atr_specyf_zagr

from PRACOWNICY

where typ_prac = 'ZAGR';

Transformacja łuków - związków wykluczających się

0x01 graphic

Metoda 1: Współdzielony klucz obcy

NAPRAWA (

numer_naprawy INTEGER(6) PRIMARY KEY,

... ,

rodzaj_naprawy CHAR(2) NOT NULL

CHECK(rodzaj_naprawy in ('ŚT', 'EW')),

id_elementu INTEGER(8) )

Transformacja łuków - związków wykluczających się

Metoda 2: Jawne klucze obce

NAPRAWA (

numer_naprawy INTEGER(6) PRIMARY KEY,

... ,

kod_środka_trw CHAR(5)

REFERENCES środki_trwałe(kod_śr),

id_wyposażenia INTEGER(8)

REFERENCES wyposażenie(id_wyp) )

89

85

_____________________________________________________________________________

Systemy baz danych Transformacja EER - Model relacyjny, Normalizacja Zbyszko Królikowski

95

___________________________________________________

Systemy baz danych Zbyszko Królikowski



Wyszukiwarka

Podobne podstrony:
9 Bazy danych Przegląd Wprowadzenie do Oracle wykład
Prawne formy działania?ministracji publicznej tematyka opracowana na podstawie wykładów prof Mata
Obszerny skrypt na podstawie ksi ki prof Rozwadowskiego
Bazy danych - cz zagadnie do egzaminu, Automatyka i Robotyka, Semestr 3, Bazy danych, BD, BD, Ba
pytania na geologie wyklad prof Banaszuk (sem.III)(1), ochrona środowiska PB
Inwentaryzacja-WYKŁAD-A.Zysnarska-skrypt na egzamin cz.I
Skrypt na podstawie podręcznika prof. zw. dr hab. W. Ziemianina, PRAWO CYWILNE
Inwentaryzacja WYKŁAD A Zysnarska skrypt na egzamin cz I
Skrypt na egzamin z Teorii Bezpieczenstwa, teoria bezpieczeństwa, wykład
Mróz Tomasz, WYKŁAD PROF RYSZARDA PALACZA NA TEMAT MYŚLI ŚREDNIOWIECZNEJ
Inwentaryzacja WYKŁAD A Zysnarska skrypt na egzamin cz I
Współczesne kierunki pedagogiczne materiały do egzaminu na podstawie wykładu prof B Śliwerskiego na
2019 04 18 Ze względu na protesty studentów, odwołano wykład prof Legutko w USA Do Rzeczy
Prawo cywilne notatki z wykładów prof Ziemianin
ZALEŻNOŚĆ KRĄŻENIOWO, diagnostyka wykłady prof ronikier

więcej podobnych podstron