PLAN WYKŁADU BAZY DANYCH GŁÓWNE ETAPY PROJEKTOWANIA BAZY MODELOWANIE LOGICZNE



Podobne dokumenty
Transformacja modelu ER do modelu relacyjnego

Transformacja modelu ER do modelu relacyjnego

PODSTAWY BAZ DANYCH. 5. Modelowanie danych. 2009/ Notatki do wykładu "Podstawy baz danych"

TRANSFORMACJA MODELU ER DO MODELU RELACYJNEGO

Modelowanie danych, projektowanie systemu informatycznego

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji

Utwórz klucz podstawowy relacji na podstawie unikalnego identyfikatora encji. podstawie kluczy podstawowych wiązanych relacji.

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła

1 Projektowanie systemu informatycznego

Bazy danych 1. Wykład 5 Metodologia projektowania baz danych. (projektowanie logiczne)

Dane wejściowe. Oracle Designer Generowanie bazy danych. Wynik. Przebieg procesu

Transformacja modelu EER do postaci relacyjnego modelu danych. Zbyszko Królikowski

PLAN WYKŁADU BAZY DANYCH MODEL DANYCH. Relacyjny model danych Struktury danych Operacje Integralność danych Algebra relacyjna HISTORIA

Modelowanie danych Model związków-encji

Transformacja modelu pojęciowego. do logicznego

Spis treści. 1 Modelowanie logiczne. Plan wykładu. 1 Modelowanie logiczne 1

Bazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

Plan wykładu: Relacyjny model danych: opis modelu, podstawowe pojęcia, ograniczenia, więzy.

Zasady transformacji modelu DOZ do projektu tabel bazy danych

Technologie baz danych

Bazy danych wykład trzeci. trzeci Przekształcenie modelu ER na model relacyjny 1 / 19

Bazy danych. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Wykład 3: Model związków encji.

Projektowanie bazy danych

WYKŁAD 1. Wprowadzenie do problematyki baz danych

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych

Modelowanie związków encji. Etapy budowy systemu informatycznego przedsiębiorstwa (1/4) Etapy budowy systemu informatycznego przedsiębiorstwa (2/4)

Temat: Modelowanie schematu bazy danych za pomocą diagramów związków encji (Entity Relationship Diagrams ERD)

Modelowanie związków encji. Etapy budowy systemu informatycznego przedsiębiorstwa (1/4) Etapy budowy systemu informatycznego przedsiębiorstwa (2/4)

1. Mapowanie diagramu klas na model relacyjny.

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA Relacyjny model danych. Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe

Przykłady normalizacji

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Program wykładu. zastosowanie w aplikacjach i PL/SQL;

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Modelowanie danych Model związków-encji

Modelowanie danych. Biologiczne Aplikacje Baz Danych

Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1

Model relacyjny. Wykład II

Zaawansowane Modelowanie I Analiza Systemów Informatycznych

1 Wstęp do modelu relacyjnego

Wykład II Encja, atrybuty, klucze Związki encji. Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.

Bazy danych i usługi sieciowe

Bazy danych - wykład wstępny

Projektowanie Systemów Informacyjnych

Wykład 2. Relacyjny model danych

Bazy Danych. Modele danych. Krzysztof Regulski WIMiIP, KISiM,

Bazy danych wykład trzeci. trzeci Modelowanie schematu bazy danych 1 / 40

Projektowanie baz danych

Modelowanie konceptualne model EER

Bazy danych 2. Wykład 2 czyli Kilka słów o tworzeniu aplikacji bazodanowej

Technologia informacyjna

Język SQL. Rozdział 9. Język definiowania danych DDL, część 2.

Bazy danych. Algebra relacji

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach

Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski.

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?

- Przedmiot kończy się egzaminem - Egzamin ma formę testu teoretycznego

Cel normalizacji. Tadeusz Pankowski

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU

Wykład 8. SQL praca z tabelami 5

Aspekty aktywne baz danych

Relacyjny model baz danych, model związków encji, normalizacje

SIECI KOMPUTEROWE I BAZY DANYCH

Dr Michał Tanaś(

Bazy danych. Dr inż. Paweł Kasprowski

BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski

Instytut Mechaniki i Inżynierii Obliczeniowej fb.com/groups/bazydanychmt/

PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH

Projektowanie bazy danych przykład

Związki pomiędzy tabelami

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

Bazy Danych i Systemy informacyjne Wykład 7. Piotr Syga

Bazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

Projektowanie baz danych

Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4

Normalizacja. Pojęcie klucza. Cel normalizacji

Bazy Danych. Model Relacyjny. Krzysztof Regulski WIMiIP, KISiM, B5, pok. 408

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

FUNKCJE SZBD. ZSE - Systemy baz danych 1

Systemy baz danych. mgr inż. Sylwia Glińska

Model relacyjny bazy danych

Bazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)

BAZY DANYCH LABORATORIUM. Studia niestacjonarne I stopnia

Bazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)

Normalizacja baz danych

Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Bazy danych. Wykład 4: Model SERM. dr inż. Magdalena Krakowiak

Autor: Joanna Karwowska

Bazy danych Wykład zerowy. P. F. Góra

PRZEWODNIK PO PRZEDMIOCIE

Bazy danych. Andrzej Bobyk

Diagramy związków encji ERD Ćwiczenia w modelowaniu danych

Pierwsza postać normalna

Wprowadzenie do projektowania i wykorzystania baz danych Relacje

Autor: Joanna Karwowska

Technologie baz danych

WPROWADZENIE DO BAZ DANYCH

Bazy danych 1. Wykład 4 Metodologia projektowania baz danych

Wprowadzenie do baz danych

Systemy informatyczne. Modelowanie danych systemów informatycznych

Transkrypt:

PLAN WYKŁADU Modelowanie logiczne Transformacja ERD w model relacyjny Odwzorowanie encji Odwzorowanie związków Odwzorowanie specjalizacji i generalizacji BAZY DANYCH Wykład 7 dr inż. Agnieszka Bołtuć GŁÓWNE ETAPY PROJEKTOWANIA BAZY DANYCH świat rzeczywisty zbieranie i analiza wymagań MODELOWANIE LOGICZNE Schemat koncepcyjny jest przekształcany z wyskopoziomowego modelu danych w implementacyjny model danych, analiza funkcjonalna projekt koncepcyjny (pojęciowy) niezależne od SZBD Ten krok nazywany jest też projektowaniem logicznym lub odwzorowaniem modelu danych, projekt aplikacji projekt logiczny zależne od SZBD Wynikiem modelowania logicznego jest schemat bazy zgodny z modelem implementacyjnym wykorzystywanym w danych SZBD. implementacja transakcji projekt fizyczny 1

ERD - FIRMA TRANSFORMACJA ERD DO MODELU RELACYJNEGO encje > tabele własności > kolumny związki > klucze obce lub tabele hierarchia encji > jedna lub wiele tabel ODWZOROWANIE ENCJI ODWZOROWANIE ENCJI Encja Relacja Prosty atrybut encji Atrybut relacji Typ danych atrybutu encji Typ danych atrybutu relacji dla konkretnego SZBD Identyfikator encji Klucz główny relacji Obowiązkowość atrybutu encji Ograniczenie atrybutu relacji NOT NULL Inne ograniczenia atrybutów encji Ograniczenia atrybutów relacji PRACOWNICY Imię, DrugieImię NULL, Nazwisko NOT NULL, DataUrodzenia NOT NULL, Płeć NULL, Pensja DZIAŁY Nazwa NULL PROJEKTY Nazwa NULL, Lokalizacja NOT NULL 2

ODWZOROWANIE SŁABYCH ENCJI Słaba encja Relacja Proste atrybuty encji Atrybuty relacji Identyfikator encji właścicielskiej Klucz obcy relacji Klucz główny relacji Kombinacja identyfikatora encji właścicielskiej i identyfikatora częściowego encji słabej (jeśli taki istnieje) Jeśli istnieje słaba encja E1 której właścicielem jest inna słaba encja E2, to najpierw odwzorowana powinna być encja właścicielska E2 ODWZOROWANIE SŁABYCH ENCJI CZŁONKOWIE_RODZINY PESEL, Imię, DataUrodzenia, Płeć, StopieńPokrewieństwa, PRIMARY KEY (PESEL, Imię) PESEL REFERENCES pracownicy(pesel) ON DELETE CASCADE, ON UPDATE CASCADE ODWZOROWANIE ZWIĄZKÓW ZWIĄZEK BINARNY 1:1 Związek binarny 1:1 transformuje się do klucza obcego we wskazanej tabeli. Związek unarny 1:1 oraz 1:N transformuje się do klucza obcego w tej samej tabeli. Związek binarny 1:M transformuje się do klucza obcego w tabeli po stronie "wiele". Związek binarny M:N transformuje się do tabeli. Związek unarny M:N transformuje się do tabeli. Wybieramy jedną z relacji i dołączamy do zbioru jej atrybutów klucz obcy wskazujący na klucz główny drugiej relacji (najlepiej jeśli relacja do której dołączamy klucz obcy jest po stronie wymaganej jeśli chodzi o udział w związku lub jeśli związek jest obustronnie opcjonalny to transformuje się do klucza obcego w tabeli o mniejszym rozmiarze), Ograniczenie integralnościowe jest definiowane dla atrybutu klucza obcego. Klucz ten nie może przyjmować wartości pustych jeśli związek był wymagany, może jeśli związek był opcjonalny. 3

ZWIĄZEK BINARNY 1:1 ZWIĄZEK BINARNY 1:1 PRACOWNICY Imię, DrugieImię NULL, Nazwisko NOT NULL, DataUrodzenia NOT NULL, Płeć NULL, Pensja DZIAŁY Nazwa NULL, Data_przejecia_kier, PESEL_kier NOT NULL REFERENCES pracownicy(pesel) Inne możliwości: Umieszczenie klucza obcego w relacji która w związku jest po stronie opcjonalnej klucz posiadałby wiele wartości pustych, Scalenie dwóch encji w jedną relację tylko jeśli związek po obu stronach był wymagany, Odwzorowanie związku ZARZĄDZA Umieszczenie kluczy obcych w obu tabelach utrudnienia w utrzymywaniu spójności. ZWIĄZEK BINARNY 1:N ZWIĄZEK BINARNY 1:N Klucz obcy dodawany do relacji po stronie liczności N, Ograniczenia referencyjne definiowane dla klucza obcego, Jeśli po stronie liczności N związek był obowiązkowy to klucz obcy ma ograniczenie NOT NULL, jeśli opcjonalny to NULL, Opcjonalność lub obowiązkowość związku po stronie o liczności 1 nie jest odwzorowywana w modelu relacyjnym. PRACOWNICY Imię, DrugieImię NULL, Nazwisko NOT NULL, DataUrodzenia NOT NULL, Płeć NULL, Pensja, NrDziału NOT NULL REFERENCES działy (numer) DZIAŁY Nazwa NULL, Odwzorowanie związku PRACUJE_W 4

ZWIĄZEK BINARNY 1:N PROJEKTY Nazwa NULL, Lokalizacja NOT NULL, NrDziału NOT NULL REFERENCES działy(numer) DZIAŁY Nazwa NULL ZWIĄZEK BINARNY M:N Reprezentowany przez nową relację, Nazwa powstaje przez połączenie nazw encji uczestniczących w związku, Wprowadzamy klucze obce wskazujące na klucze główne obu relacji reprezentujących encje biorące udział w związku, Wprowadzone klucze obce tworzą klucz główny relacji. Odwzorowanie związku KONTROLUJE ZWIĄZEK BINARNY M:N PRACOWNICYPROJEKTY NrProj REFERENCES projekty(numer), PESELPr REFERENCES pracownicy (PESEL), Godziny, PRIMARY KEY (NrProj,PESELPr) ZWIĄZEK UNARNY Dotyczy rekursywnego powiązania różnych instancji tej samej encji, Związek unarny 1:1 lub 1:N obustronnie opcjonalny transformuje się do klucza obcego w tej samej tabeli, Związek unarny M:N obustronnie opcjonalny jest transformowany do tabeli. 5

ZWIĄZEK UNARNY 1:N PRACOWNICY ZWIĄZEK UNARNY M:N Nazwa Id_leku LEKI Id_leku PRIMARY KEY, Nazwa NOT NULL Imię, DrugieImię NULL, Nazwisko NOT NULL, DataUrodzenia NOT NULL, Płeć NULL, Pensja, NrDziału NOT NULL REFERENCES działy (numer), PESELSzefa NULL REFERENCES Pracownicy (PESEL) zastępnik M Lek Zastępuje zastępowany N ZASTĘPNIKI Id_leku REFERENCES leki(id_leku), Id_zastęnika REFERENCES leki (id_leku), PRIMARY KEY (Id_leku, id_zastepnika) ZWIĄZEK TERNARNY (I INNE N-SKŁADNIKOWE) ZWIĄZEK TERNARNY Związki ternarne i inne n-składnikowe (gdzie n>2) odwzorowuje się w nową relację, Jako klucze obce do relacji wprowadzamy klucze główne relacji powstałych przez transformacje encji uczestniczących w związku, Klucze obce zazwyczaj tworzą klucz główny tabeli. DOSTAWCY NazwaD PRIMARY KEY, CZĘŚCI NazwaC PRIMARY KEY, DOSTARCZA NazwaC REFERENCES części (nazwac), NazwaP REFERENCES projekty (nazwap), NazwaD REFERENCES dostawcy (nazwad), Ilość, PRIMARY KEY (nazwad, nazwac, nazwap) PROJEKTY NazwaP PRIMARY KEY, 6

ODWZOROWANIE ATRYBUTÓW WIELOWARTOŚCIOWYCH Dla każdego atrybutu wielowartościowego należy stworzyć relację, która będzie zawierała atrybuty odpowiadające wielowartościowemu oraz klucz obcy wskazujący na odwzorowywaną encję, Klucz główny nowej relacji stanowi kombinacja atrybutu odwzorowywanego oraz klucza obcego, Jeśli atrybut wielowartościowy jest zarazem złożonym to do relacji wprowadzamy tylko atrybuty proste i analizujemy atrybuty proste w celu wyznaczenia klucza głównego. ODWZOROWANIE ATRYBUTÓW WIELOWARTOŚCIOWYCH LOKALIZACJE_DZIAŁÓW NumerD, Lokalizacja, PRIMARY KEY (NumerD, Lokalizacja) BAZA FIRMA Pracownicy Imię Dimię Nazwisko PESEL DataUr Adres Płeć Pensja PESELSzefa Nrdziału Działy Nazwa Numer PESELSzefa DataRozpKier Lokalizacje_działów NumerD Lokalizacja Projekty Nazwa Numer Lokalizacja NumerD PracownicyProjekty PESEL Nr_proj Godziny ODWZOROWANIE SPECJALIZACJI Każdą specjalizację z m podencjami (S1,S2,,Sm) oraz nadencją C z atrybutami (k,c1,c2, cn) odwzorowujemy w relacje stosując kilka możliwych metod: do jednej relacji: z jednym atrybutem typu i z wieloma atrybutami typów, do wielu relacji: wyłącznie dla podencji, dla nadencji i podencji. Członkowie_Rodziny PESEL Imię Płeć DataUr Stopień_pokrewieństwa 7

JEDNA RELACJA Z JEDNYM ATRYBUTEM TYPU JEDNA RELACJA Z JEDNYM ATRYBUTEM TYPU Tworzona jest jedna relacja reprezentująca jednocześnie nadecję i podencje, Encja nadklasy będzie miała wartości puste we wszystkich lokalnych atrybutach podencji, Nie jest zalecana, gdy podencje mają wiele atrybutów lokalnych, gdy niewiele atrybutów lokalnych to lepsza niż pozostałe, Stosowana szczególnie do rozłącznych podencji, Polega na dołączeniu pojedynczego atrybutu określającego typ, PESEL Nazwisko Adres Pracownik d Naukowy Techniczny Stopień Uprawnienia PRACOWNIK Nazwisko, Stopień, Uprawnienia, Typ_pracownika JEDNA RELACJA Z WIELOMA ATRYBUTAMI TYPÓW Tworzona jest jedna relacja reprezentująca jednocześnie nadecję i podencje, Stworzona z myślą o odwzorowywaniu częściowo pokrywających się podencji, Dołączamy m logicznych pól typów, po jednej dla każdej podencji, które przechowują wartości {tak, nie},gdzie wartośc tak oznacza że dana krotka jest egzemplarzem podencji. JEDNA RELACJA Z WIELOMA ATRYBUTAMI TYPÓW PRACOWNIK Nazwisko, Stopień, Uprawnienia, Jest_naukowym, Jest_technicznym 8

WIELE RELACJI DLA NADENCJI I PODENCJI WIELE RELACJI DLA NADENCJI I PODENCJI Tworzona jest relacja dla nadencji i jej atrybutów oraz po jednej relacji dla każdej podencji, Każda relacja stworzona z podencji zawiera atrybuty lokalne oraz klucz główny nadencji, który staje się kluczem głównym podencji, Może być stosowana bez względu na ograniczenia czy więzy. PRACOWNIK Nazwisko, PESEL_n REFERENCES naukowy(pesel), PESEL_t REFERENCES techniczny(pesel) NAUKOWY Stopień TECHNICZNY Uprawnienia WIELE RELACJI WYŁĄCZNIE DLA PODENCJI WIELE RELACJI WYŁĄCZNIE DLA PODENCJI Tworzone są relacje po jednej dla wszystskich podencji, Każda relacja stworzona z podencji zawiera atrybuty wspólne oraz lokalne i klucz główny nadencji, który staje się kluczem głównym każdej podencji, Sprawdza się gdy podencje są całkowite każda nadencja należy przynajmniej do jednej z jej podencji oraz gdy spełniony jest warunek rozłączności. NAUKOWY Nazwisko, Stopień TECHNICZNY Nazwisko, Uprawnienia 9

PODSUMOWANIE ODWZOROWANIA WYKŁAD PRZYGOTOWANO NA PODSTAWIE Model ER Encja Związek 1:1 i 1:N Związek M:N Związek n-składnikowy Atrybut prosty Atrybut złożony Atrybut wielowartościowy Zbiór wartości Atrybut klucza Specjalizacja (nadencje, podencje) Model relacyjny Relacja Klucz obcy Relacja z dwoma kluczami obcymi Relacja z n kluczami obcymi Atrybut Zbiór atrybutów prostych Relacja i klucz obcy Dziedzina Klucz główny Jedna relacja lub wiele relacji R. Elmasri, S. B. Navathe, Wprowadzenie do systemów baz danych, Helion, 2005, C. J. Date, Wprowadzenie do systemów baz danych, WNT, Warszawa, 2000, http://wazniak.mimuw.edu.pl/index.php?title=bazy_ danych. 10