Úvod do databázových systémů 6. cvičení

Podobné dokumenty
Úvod do databázových systémů

Úvod do databázových systémů

Úvod do databázových systémů 1. cvičení

Úvod do databázových systémů

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.

Úvod do databázových systémů

Obsah přednášky. Databázové systémy RDBMS. Fáze návrhu RDBMS. Coddových 12 pravidel. Coddových 12 pravidel

Databáze 2013/2014. Konceptuální model DB. RNDr. David Hoksza, Ph.D.

Informační systémy ve zdravotnictví. 6. cvičení

Úvod do databázových systémů 10. cvičení

C8 Relační databáze. 1. Datový model

A5M33IZS Informační a znalostní systémy. O čem předmět bude? Úvod do problematiky databázových systémů

Konceptuální modelování. Pavel Tyl

Databáze. Logický model DB. David Hoksza

Databázové systémy. Cvičení 2

DBS Konceptuální modelování

Databázové modelování. Analýza Návrh konceptuálního schématu

Úvod do databázových systémů

Úvod do databázových systémů

Úvod do databázových systémů 3. cvičení

Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky.

Informační systémy ve zdravotnictví. 8. cvičení

DATOVÉ MODELOVÁNÍ ER MODEL

Analýza a modelování dat. Helena Palovská

Relace x vztah (relationship)

TEORIE ZPRACOVÁNÍ DAT

Informační systémy ve zdravotnictví. 10. cvičení

A5M33IZS Informační a znalostní systémy. Relační databázová technologie

Databázové systémy. Ing. Radek Holý

Informační systémy 2008/2009. Radim Farana. Obsah. Obsah předmětu. Požadavky kreditového systému. Relační datový model, Architektury databází

Analýza dat a modelování. Přednáška 1

Databázové systémy. Vztahy a relace. 3.přednáška

Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava. Úvod do databázových systémů 2012/2013 IS MHD

Analýza dat a modelování. Přednáška 2

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

RNDr. Jakub Lokoč, Ph.D. RNDr. Michal Kopecký, Ph.D. Katedra softwarového inženýrství Matematicko-Fyzikální fakulta Univerzita Karlova v Praze

Databázové systémy. Datová integrita + základy relační algebry. 4.přednáška

Objektově relační databáze a ORACLE 8

Úvod do databázových systémů

Úvod do databázových systémů

Databázové systémy. Přednáška 1

Modelový příklad Knihovna Vypracovaný příklad ze cvičení včetně komentářů k řešení

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph)

Funkční schéma Datové schéma Integrita modelu s realitou

Relační databázová technologie

Úvod do databázových systémů

DBS Transformace konceptuálního schématu na

Úvod do databázových systémů 2012/2013 IS MHD. Jiří Znoj zno

Obsah přednášky. Databázové systémy. Normalizace relací. Normalizace relací. Normalizace relací. Normalizace relací

Kapitola 2: Entitně-vztahový model (Entity-Relationship model) Množiny entit (entitní množiny) Atributy

Data v informačních systémech

Střední průmyslová škola Zlín

Databázové systémy. Cvičení 1

Informační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika

Jiří Mašek BIVŠ V Pra r ha

2 Konceptuální modelování a návrh databáze

5. POČÍTAČOVÉ CVIČENÍ

8.2 Používání a tvorba databází

2 Konceptuální modelování a návrh databáze

Materiál byl vytvořen v rámci projektu Nové výzvy, nové příležitosti, nová škola

Primární klíč, cizí klíč, referenční integrita, pravidla normalizace, relace

Relační databázový model. Vladimíra Zádová, KIN, EF, TUL- DBS

Transformace konceptuálního modelu na relační

Relační databázová technologie

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

Primární klíč (Primary Key - PK) Je právě jedna množina atributů patřící jednomu z kandidátů primárního klíče.

4IT218 Databáze. 4IT218 Databáze

Databáze I. Přednáška 2

Databázové systémy Cvičení 5.2

Databázové systémy. Cvičení 3

DBS Konceptuální modelování

4IT218 Databáze. 4IT218 Databáze

Úvod do softwarového inženýrství IUS 2009/2010 p.1/30

Databázové a informační systémy Informační systém prodejny nábytku. Jakub Kamrla, KAM087

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi.

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

Databáze I. Přednáška 1

Databázové systémy. Dátové modelovanie - relačný model

Databáze I. Přednáška 3

geotym.geogr.muni.cz K čemu jsou datové specifikace Možnosti elektronického vzdělávání v oblasti směrnice INSPIRE II. Co Vás čeká dnes?

7.3 Diagramy tříd - základy

Úvod do databázových systémů. Lekce 1

Datové modelování II

Otázka č. 1 (bodů za otázku: 4)

Analýza dat a modelování. Přednáška 3

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13

Databázové systémy trocha teorie

Okruhy z odborných předmětů

RELAČNÍ DATABÁZOVÉ SYSTÉMY

Databázové systémy a SQL

Databázové systémy. Tomáš Skopal. - úvod do relačního modelu. - převod konceptuálního schématu do relačního

Entitno - relačný model. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)

Terminologie v relačním modelu

Konceptuální modelování

Diagram výskytů a vztahů

Konceptuální datové modely používané při analýze

4. Základy relačních databází, logická úroveň návrhu

30. března Je možné dle analýzy implementovat systém tak, aby splňoval požadavky zadavatele?

S databázemi se v běžném životě setkáváme velmi často. Uvádíme běžné použití databází velkého rozsahu:

KIV/ZIS cvičení 1. Martin Kryl

Transkript:

Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů 6. cvičení Ing. Petr Lukáš petr.lukas@nativa.cz Ostrava, 2012

Modelování databází [1] Datový model množina konceptů, které mohou být použity pro popis struktury databáze Konceptuální model logický popis struktury databáze Databázové schéma (např. relační datový model) popis struktury databáze pro konkrétní databázový systém Zadání Konceptuální model Relační datový model Vytvoření databáze

entita entitní typ vztah atribut* hodnota atributu* doména atributu* klíč integritní omezení kardinalita vztahu povinnost ve vztahu slabý entitní typ *viz. první cvičení Konceptuální modelování

Entita, entitní typ Konceptuální model Relační datový model Entita konkrétní objekt reálného světa např. Jan Novák narozen 1.1.1990 Entitní typ popis množiny entit se stejnými atributy. Používáme lineární zápis. např. Osoba (rc, jmeno, prijmeni, datum_narozeni)

Entita, entitní typ Konceptuální model Entita konkrétní objekt reálného světa např. Jan Novák narozen 1.1.1990 Relační datový model Záznam popisuje konkrétní výskyt objektu Entitní typ popis množiny entit se stejnými atributy. Používáme lineární zápis. např. Osoba (rc, jmeno, prijmeni, datum_narozeni) Schéma relace popisuje množinu záznamů se stejnými atributy

Klíč Konceptuální model Klíč jeden nebo více atributů, které jednoznačně identifikují entitu v množině entit Relační datový model Primární klíč atribut nebo více atributů, jejichž hodnota nebo kombinace hodnot je pro každý záznam jedinečná Na úrovni konceptuálního modelu nepoužíváme cizí klíč, vše zaznamenávají vztahy (viz. dále) Cizí klíč atribut odkazující se na primární klíč

Vztahy Vztah popisuje fyzickou nebo konceptuální vazbu mezi mezi entitami, resp. entitními typy Zamestnanec id_zamestnance jmeno prijmeni datum_narozeni PRACUJE_V Oddělení id_oddeleni nazev popis Lineární zápis vztahu: PRACUJE_V (Osoba, Firma)

Vztahy Oddělení Zaměstnanec Objednávka Výrobek Kategorie výrobku Položka objednávky

Vztahy Oddělení Zaměstnanec Objednávka Výrobek Kategorie výrobku Položka objednávky PRACUJE_V (Zaměstnanec, Oddělení) OBSAHUJE (Objednávka, Položka objednávky) ZALOZIL (Zaměstnanec, Objednávka) JE_V_KATEGORII (Výrobek, Kategorie výrobku) JE_NADRIZENYM (Zaměstnanec, Zaměstnanec) JE_NA_POLOZCE (Výrobek, Položka objednávky)

Kardinalita vztahu Zamestnanec id_zamestnance jmeno prijmeni datum_narozeni Oddeleni id_oddeleni nazev popis

Kardinalita vztahu Zamestnanec id_zamestnance jmeno prijmeni datum_narozeni Oddeleni id_oddeleni nazev popis 1:1 Zaměstnanec může být vedoucím jednoho oddělení, oddělení má jednoho vedoucího. 1:N Jedno oddělení má více zaměstnanců. Každý zaměstnanec pracuje v jednom oddělení. M:N Jedno oddělení mí více zaměstnanců, jeden zaměstnanec může pracovat ve více odděleních.

Kardinalita vztahu A B id_a attr1 attr2 id_b attr1 attr2 1. Může být jedno konkrétní A ve vztahu s více konkrétními B? 2. Může být jedno konkrétní B ve vztahu s více konkrétními A? 1 NE 1 ANO 2 NE 1:1 1:N 2 ANO N:1 M:N

Kardinalita vztahu (př.) Produkt id_produktu nazev Kategorie id_kategorie nazev Může být jeden produkt ve více kategoriích? Může mít jedna kategorie více produktů?

Kardinalita vztahu (př.) Produkt id_produktu nazev Kategorie id_kategorie nazev Může být jeden produkt ve více kategoriích? Pravděpodobně ne, ale pokud neznáme přesnější specifikaci, nemáme jistotu. Může mít jedna kategorie více produktů? Nejspíše ano.

Kardinalita vztahu (př.) Produkt id_produktu nazev N 1 Kategorie id_kategorie nazev Může být jeden produkt ve více kategoriích? Pravděpodobně ne, ale pokud neznáme přesnější specifikaci, nemáme jistotu. Může mít jedna kategorie více produktů? Nejspíše ano. Jedná se o vztah N:1

Povinnost ve vztahu A B id_a attr1 attr2 id_b attr1 attr2 1. Musí být jedno konkrétní A ve vztahu s nějakým konkrétním B? 2. Musí být jedno konkrétní B ve vztahu s nějakým konkrétním A?

Povinnost ve vztahu (př.) Produkt id_produktu nazev Kategorie id_kategorie nazev Musí být jeden produkt v nějaké kategorii? Musí mít jedna kategorie nějaký produkt?

Povinnost ve vztahu (př.) Produkt id_produktu nazev Kategorie id_kategorie nazev Musí být jeden produkt v nějaké kategorii? Pokud nějaký produkt vyrábíme, pak by do nějaké kategorie měl spadat, takže ano. Musí mít jedna kategorie nějaký produkt? Můžeme vytvořit prázdnou kategorii, do které třeba časem nějaký produkt zařadíme, takže ne.

Integritní omezení Integritní omezení Různé doplňující podmínky, které jsou většinou kladeny na hodnoty atributů nebo na vztahy mezi entitami např.: - specifikace datového typu atributu - specifikace formátu hodnoty atributu (PSČ musí mít 5 znaků) - specifikace povinnosti ve vztahu

Slabý entitní typ Některé entitní typy popisují objekty, jejichž samostatná existence nemá smysl Slabé entitní typy jsou v relačním modelu převedeny na relace se složeným klíčem, kde některé z klíčových atributů jsou primárním klíčem v jiných relacích.

Slabý entitní typ Objednavka idobj cislo_obj datum_vytvoreni PolozkaObjednavky idobj poradi produkt mnozstvi

Slabý entitní typ Objednavka idobj cislo_obj datum_vytvoreni PolozkaObjednavky idobj poradi produkt mnozstvi Položka objednávky nemá bez objednávky smysl Klíč položky je složen z id objednávky a pořadí na objednávce

Shrnutí pojmů entita odpovídá záznamu entitní typ odpovídá schématu relace vztah fyzická nebo konceptuální vazba klíč jeden nebo více atributů jednoznačně identifikující entitu integritní omezení různé podmínky kladené na atributy a vaby kardinalita vztahu 1:1, 1:N, M:N povinnost ve vztahu slabý entitní typ množina entit, které nemohou existovat bez jiných nadřazených entit

E-R Diagram Zaměstnanec Výrobek ZALOZIL JE_NA_POLOZCE Objednávka OBSAHUJE Položka objednávky Plné kolečko: Objednávka musí mít položky (povinnost ve vztahu) Propojovací čára: Vztah Vidlička: Jedna objednávka má více položek (kardinalita vztahu 1:N) Dvojitý obdélník: Položka objednávky je slabý entitní typ

E-R Diagram (doplněn o atributy) Podtržený atribut: klíč jmeno id_zamestnance email Zaměstnanec Výrobek ZALOZIL JE_NA_POLOZCE Objednávka OBSAHUJE Položka objednávky

Další vizualizace koncept. modelu Jazyk UML (Unified Modeling Language) Vizuální programovací jazyk Standard Umožňuje např. přímé generování kódu Další informace v kurzu Softwarové inženýrství Účelem vizualizace (a později dokumentace) je především přehlednost

Nástroje pro tvorbu koncept. modelů Oracle SQL Developer Data Modeler Toad Data Modeler Microsoft Visio Tužka a papír

Úvod do databázových systémů www.dbedu.cs.vsb.cz jméno: student heslo: tuodbedu Vpravo sloupec -> České kurzy -> UDBS -> Cvičení Relační algebra Toad Data Modeler Oracle SQL Developer Data Modeler Tužka a papír

Reference [1] Radim Bača, Konceptuální model Úvod do databázových systémů, 2012