Zaawansowane Modelowanie I Analiza Systemów Informatycznych

Podobne dokumenty
Zaawansowane Modelowanie I Analiza Systemów Informatycznych

Zaawansowane Modelowanie I Analiza Systemów Informatycznych

Transformacja modelu ER do modelu relacyjnego

Zasady transformacji modelu DOZ do projektu tabel bazy danych

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

Transformacja modelu ER do modelu relacyjnego

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

Modelowanie danych, projektowanie systemu informatycznego

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

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

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

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

1 Projektowanie systemu informatycznego

Bazy danych. Zasady konstrukcji baz danych

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

TRANSFORMACJA MODELU ER DO MODELU RELACYJNEGO

1. Mapowanie diagramu klas na model relacyjny.

Związki pomiędzy tabelami

Wykład 2. Relacyjny model danych

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

Modelowanie konceptualne model EER

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

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

Bazy Danych 2008 Część 1 Egzamin Pisemny

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

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

MSI dr. Inż. Mariusz Trzaska. obiektowych językach programowania

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

Transformacja modelu pojęciowego. do logicznego

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

Projektowanie Systemów Informacyjnych

Normalizacja relacyjnych baz danych. Sebastian Ernst

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

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

3. Podzapytania, łączenie tabel i zapytań

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

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

Krzysztof Kadowski. PL-E3579, PL-EA0312,

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

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

Tabela wewnętrzna - definicja

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

Technologia informacyjna

Projektowanie bazy danych

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

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

K1A_W11, K1A_W18. Egzamin. wykonanie ćwiczenia lab., sprawdzian po zakończeniu ćwiczeń, egzamin, K1A_W11, K1A_W18 KARTA PRZEDMIOTU

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

Normalizacja schematu bazy danych. Radosław Fijołek Paweł Romanowski Paweł Trzos

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny technologiczny Politechnika Śląska

Bazy Danych egzamin 9 luty, 2012 rozwiazania

Technologie baz danych

Informatyka Ćwiczenie 10. Bazy danych. Strukturę bazy danych można określić w formie jak na rysunku 1. atrybuty

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Relacyjny model danych

Modelowanie danych Model związków-encji

TECHNIKI MODELOWANIA STRUKTURY INFORMACYJNEJ

BAZA DANYCH. Informatyka. ZESPÓŁ SZKÓŁ ELEKTRYCZNYCH Prowadzący: inż. Marek Genge

Model relacyjny. Wykład II

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

Baza danych. Baza danych to:

1 Wstęp do modelu relacyjnego

Modelowanie związków encji. Oracle Designer: Diagramy związków encji. Encja (1)

Model logiczny SZBD. Model fizyczny. Systemy klientserwer. Systemy rozproszone BD. No SQL

Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4

WYKŁAD 1. Wprowadzenie do problematyki baz danych

MAS dr. Inż. Mariusz Trzaska

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

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

Bazy danych Karta pracy 1

Modelowanie danych. Biologiczne Aplikacje Baz Danych

WPROWADZENIE DO BAZ DANYCH

Bazy Danych egzamin poprawkowy, 2012 rozwiazania

Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski.

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

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

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

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

Pojęcie systemu informacyjnego i informatycznego

Projekt ZMA. Wymagania funkcjonalne. Piotr Gago Projektowany system będzie obsługiwać klinikę dentystyczną.

Komunikaty szczegółowe NFZ. Jednorodne Grupy Pacjentów Faza 0

KATOLICKI UNIWERSYTET LUBELSKI. Projekt Bazy Danych. Maciej Lis K A T O L I C K I U N I W E R S Y T E T L U B E L S K I

1 Przygotował: mgr inż. Maciej Lasota

Podstawowe zapytania SELECT (na jednej tabeli)

Przykłady normalizacji

Podrozdziały te powinny zawierać informacje istotne z punktu widzenia przyjętego celu pracy

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,

Bazy danych. Algebra relacji

KSS: Modelowanie konceptualne przykład

Autor: Joanna Karwowska

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

BAZY DANYCH. Co to jest baza danych. Przykłady baz danych. Z czego składa się baza danych. Rodzaje baz danych

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

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

2. Tabele w bazach danych

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

WPROWADZENIE DO BAZ DANYCH

Dr Michał Tanaś(

Transkrypt:

Zaawansowane Modelowanie I Analiza Systemów Informatycznych ORM mapowanie do schematu relacyjnego mgr. inż. Tomasz Pieciukiewicz tomasz.pieciukiewicz@gmail.com

Zasady mapowania Predykaty mające role funkcjonalne związane z tym samym typem obiektu grupujemy do jednej tabeli Identyfikator typu obiektu zostaje kluczem głównym Nazwa tabeli zazwyczaj taka, jak nazwa obiektu

Zasady mapowania Pracownik(nr, nazwisko, [telefon])

Zasady mapowania Predykaty ze złożonymi ograniczeniami unikalności mapujemy do osobnych tabel Nazwa tabeli semantycznie związana z predykatem Klucz główny kolumny wynikające z ograniczenia unikalności (jeśli jest kilka, wybieramy jedno)

Zasady mapowania Pracownik(nr, nazwisko, [telefon]) Prowadzi (nr, nrrej)

Zasady mapowania Dobrym pomysłem jest używanie zawsze tej samej nazwy kolumny jako klucza obcego reprezentującego dany obiekt Chyba, że dany obiekt odgrywa różne role w ramach jednego predykatu

Zasady mapowania Część(nr,...) Zawiera(nadczęść, podczęść, ilość)

Mapowanie asocjacji 1:1 Jeśli jeden z obiektów nie pełni innych ról najlepiej połączyć oba obiekty wchodzące w asocjację w jednej tabeli W wypadku ról opcjonalnych (1:0..1) pozwalamy nullować odp. kolumnę/kolumny

Mapowanie asocjacji 1:1 Klient(nrKlienta, płeć, dataurodzenia, [nrkarty])

Mapowanie asocjacji 1:1 W przeciwnym wypadku tworzymy oddzielne tabele W wypadku ról opcjonalnych klucz realizujący relację umieszczamy po stronie obowiązkowej W wypadku opcjonalności po obu stronach preferujemy rozwiązanie dające mniej nulli

Mapowanie asocjacji 1:1 Klient(nrKlienta, płeć, dataurodzenia) KartaID(nrKarty, nrklienta, dataważności)

Mapowanie asocjacji 1:1 Czasem przy potencjalnie dużej liczbie nulli korzystne bywa zastosowanie trzech tabel

Mapowanie asocjacji 1:1 Pracownik(nrPracownika,...) Używa (nrpracownika, nrrejestracyjny) Samochód(nrRejestracyjny,...)

Zewnętrzne ograniczenia unikalności Przy braku innego schematu referencyjnego, wartości unikalne stają się kluczem głównym W przeciwnym wypadku wymuszamy unikalność wykorzystując możliwości oferowane przez BD (w ramach jednej lub więcej tabel)

Zewnętrzne ograniczenia unikalności Pracownik(Nazwisko, Inicjały,...)

Zewnętrzne ograniczenia unikalności Pracownik(nrPracownika, Nazwisko, Inicjały,...)

Zagnieżdżone encje Traktujemy zagnieżdżony obiekt jak zwykły, zastępując jego schemat referencyjny jakimś symbolem Grupujemy fakty w normalny sposób Zastępujemy symbol odpowiednimi atrybutami zagnieżdżonego obiektu

Zagnieżdżone encje Zadanie (x, datastartu,[datakońca]) Zadanie (nr, nazwa, datastartu,[datakońca])

Obiekty niezależne Niezależne obiekty (zagnieżdżone lub nie) mapujemy do osobnych tabel z identyfikatorem obiektu jak kluczem głównym Pozostałymi atrybutami opcjonalnymi

Obiekty niezależne Przypisanie(nr, nazwa) Praca(nr, nazwa, faza,data)

Mapowanie podtypów Trzy podstawowe techniki Absorpcja Separacja Partycjonowanie

Podtypy - absorpcja Absorbujemy podtypy do nadtypu Przeprowadzamy mapowanie jak zwykle Implementujemy ograniczenia wynikające z podtypów

Podtypy - absorpcja Pacjent(nr, nazwisko, płeć, [kod],[liczbaciąż]) Kod jeśli płeć= M liczbaciąż jeśli płeć= K

Podtypy - separacja Tworzymy osobne tabele dla danych specyficznych dla podtypów

Podtypy - separacja Pacjent(nr, nazwisko, płeć) Prostata(nr, kod) LiczbaCiąż(nr,ilość) Prostata jeśli płeć= M LiczbaCiąż jeśli płeć= K

Podtypy - partycjonowanie Tworzymy osobne tabele dla każdego z podtypów Możliwe do wykorzystania tylko jeśli przecięcie populacji podtypów jest puste, a suma daje pełną populację typu

Podtypy - partycjonowanie PacjentKobieta(nr, nazwisko, płeć,[liczbaciąż]) PacjentMężczyzna(nr, nazwisko, płeć,[kod]) PacjentKobieta płeć= K PacjentMężczyzna płeć= M

PYTANIA?