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

Podobné dokumenty
Databáze I. Přednáška 2

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

DBS Konceptuální modelování

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

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

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

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

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

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

Databáze. Logický model DB. David Hoksza

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

Úvod do informatiky. Miroslav Kolařík. Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008.

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

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

4IT218 Databáze. 4IT218 Databáze

Konceptuální modelování. Pavel Tyl

DBS Transformace konceptuálního schématu na

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

DBS Konceptuální modelování

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

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

Relace. R, S vyjmenovaním prvků. Sestrojte grafy relací R, S. Určete relace

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

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

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

Konceptuální modelování

Terminologie v relačním modelu

Úvod do predikátové logiky. (FLÚ AV ČR) Logika: CZ.1.07/2.2.00/ / 1

RELACE, OPERACE. Relace

prof. RNDr. Čestmír Burdík DrCs. prof. Ing. Edita Pelantová CSc. BI-ZMA ZS 2009/2010

Lineární algebra Kapitola 1 - Základní matematické pojmy

Diagram výskytů a vztahů

Cílem kapitoly je opakování a rozšíření středoškolských znalostí v oblasti teorie množin.

Hierarchický databázový model

Teorie množin. Čekají nás základní množinové operace kartézské součiny, relace zobrazení, operace. Teoretické základy informatiky.

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.

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

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

Matematická analýza 1

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

Relační model dat (Codd 1970)

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

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

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

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

Pojem binární relace patří mezi nejzákladnější matematické pojmy. Binární relace

Databáze I. 4. přednáška. Helena Palovská

Integrace relačních a grafových databází funkcionálně

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

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

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

Analýza a modelování dat 3. přednáška. Helena Palovská

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

Databázové systémy BIK-DBS

Relace x vztah (relationship)

Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce

5. Formalizace návrhu databáze

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

Michal Valenta DBS Databázové modely 2. prosince / 35

Databázové systémy. * relační kalkuly. Tomáš Skopal. - relační model

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

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

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

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

Výroková a predikátová logika - VI

RELAČNÍ DATABÁZOVÉ SYSTÉMY

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

Učební texty k státní bakalářské zkoušce Matematika Diskrétní matematika. študenti MFF 15. augusta 2008

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

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

DATOVÉ MODELOVÁNÍ ER MODEL

Relační databázová technologie

Základní pojmy teorie množin Vektorové prostory

Úvod do informatiky. Miroslav Kolařík

Datové modelování II

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

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

J. Zendulka: Databázové systémy 4 Relační model dat 1

Relační datový model. Integritní omezení. Normální formy Návrh IS. funkční závislosti multizávislosti inkluzní závislosti

Kapitola 1. Relace. podle definice podmnožinou každé množiny. 1 Neříkáme už ale, co to je objekt. V tom právě spočívá intuitivnost našeho přístupu.

5. Formalizace návrhu databáze

4. Relační model dat. J. Zendulka: Databázové systémy 4 Relační model dat 1

Princip rozšíření a operace s fuzzy čísly

Množina je nejdůležitější matematický pojem, na kterém stojí veškeré další matematické pojmy.

Konceptuální modelování

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 a modelování dat. Helena Palovská

Matematická logika. Miroslav Kolařík

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

UČEBNÍ TEXTY OSTRAVSKÉ UNIVERZITY. Přírodovědecká fakulta RELAČNÍ DATABÁZE (DISTANČNÍ VÝUKOVÁ OPORA) Zdeňka Telnarová. Aktualizovaná verze 2006

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

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

DBS relační DB model, relační algebra

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

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

B i n á r n í r e l a c e. Patrik Kavecký, Radomír Hamřík

Úvod do databázových systémů. Cvičení 12 Ing. Martin Zwierzyna

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

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

Transformace ER SQL. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 9

Transkript:

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

Matematické a databázové relace Matematická relace podmnožina kartézského součinu A = {X, Y}, B = {1,2,3} kartézský součin: A B A B = {(X,1),(X,2),(X,3),(Y,1),(Y,2),(Y,3)} relace R: R A B R = {(X,1),(Y,1)}

kartézský součin: A = {1, 2, 3} A A={(1,1),(1,2),(1,3),(2,1),(2,2),(2,3),(3,1),(3,2),(3,3) } binární relace menší < (poněkud neobvyklé označení množiny, ale nám bližší): < = {(1,2),(1,3),(2,3)} píšeme: (1,2) <, resp. 1 < 2

binární relace větší nebo rovno neoznačíme ji tentokrát, ale jako množinu V, relace jsou přece množiny... V = {(1,1),(2,1),(2,2),(3,1),(3,2),(3,3)} píšeme: (2,1) V, resp. 2 V 1

Některé vlastnosti binární relací nechť relace reflexivní relace R A A x A platí : xrx prvek je v relaci sám se sebou rovnost je reflexivní relace relace menší není reflexivní dvojice (1,1) nepatří do relace relace menší nebo rovno je reflexivní

symetrická relace x, y A platí : rovnost je symetrická relace jestliže relace menší není symetrická dvojice (1,2) patří do relace, ale dvojice (2,1) do ní nepatří relace sourozenectví je symetrická relace relace kamarádství je symetrická relace silně antisymetrická relace slabě antisymetrická relace xry, pak yrx x, y A platí : jestliže xry,pak ( yrx) x, y A platí : jestliže xry yrx, pak x = y

tranzitivní relace x, y, z A platí : jestliže xry yrz, pak relace menší je tranzitivní relace menší nebo rovno (tzv. uspořádání) je tranzitivní relace sourozenectví je tranzitivní relace kamarádství není tranzitivní xrz

Databázová relace Relace R nad množinou atributů A = {A 1 :D 1,,A n :D n } je podmnožina kartézského součinu D 1 D 2 D n A i jsou jména atributů D i jsou domény n je arita relace R(A 1 :D 1,,A n :D n ) je schéma relace prvky relace jsou n-tice (a 1,a 2,,a n ) a i je hodnota atributu A i z domény D i

Příklad: atributy: A 1 : FILM, A 2 : REŽISÉR domény D 1 =D FILMY ={Na samotě u lesa, Amadeus} množina všech filmů na světě D 2 =D REŽISÉŘI ={Menzel, Forman} množina všech režisérů na světě kartézský součin D 1 x D 2 = D FILMY x D REŽISÉŘI = = {(Na samotě u lesa, Menzel), (Na samotě u lesa, Forman), (Amadeus, Menzel), (Amadeus, Forman)}

Příklad: vyberu relaci F smysluplnou podmnožinu kartézského součinu dle pravdy: F = {(Na samotě u lesa, Menzel), (Amadeus, Forman) } relace je arity n = 2 (prvky množiny jsou dvojice) prvky relace jsou dvě dvojice první dvojice (a 1,a 2 ) = (Na samotě u lesa, Menzel) druhá dvojice (a 1,a 2 ) = (Amadeus, Forman a i je hodnota atributu A i z domény D i : Na samotě u lesa je hodnota atributu A 1 : FILM z domény D 1 =D FILMY F (FILM:D FILMY, REŽISÉR:D REŽISÉŘI ) je schéma relace

Tabulková terminologie relace = tabulka schéma relace = záhlaví tabulky arita relace = počet sloupců jméno atributu = jméno sloupce n tice = řádek tabulky

E-R model jiné notace většina současných modelovacích nástrojů case používá jinou grafickou notaci než původní Chenovu nástroj SQL Developer Data Modeler: entity obdélník atributy seznam uvnitř obdélníka primární klíč označen znakem # povinná hodnota (NOT NULL) označena znakem * nepovinná hodnota označena kolečkem

E-R model jiné notace vztahy čára kardinalita a povinnost členství ve vztahu se vyjadřuje typem čáry kardinalita 1:N, resp. M:N : rozvětvení čáry plná: povinný výskyt ve vztahu přerušovaná: nepovinný výskyt ve vztahu

Vztah M:N v modeláři Oracle atribut vztahu rozvětvení vícenásobný výskyt přerušovaná čára nepovinný výskyt ve vztahu vztah: SI_REZERVOVAL (ČTENÁŘ - 0..*:0..* - KNIHA)

Poznámka - vztahy M:N některé nástroje nemají vztahy M:N řešení: dekompozice vztahu M:N mezi entitami E1 a E2 na dva vztahy 1:N vzpomeňme: jak se do relačního modelu transformuje vztah M:N vztah M:N převedu na samostatnou relaci s cizími klíči již do E-R modelu zavedu entitní typ E3 odpovídající relaci M:N a zavedu vztahy 1:N mezi E1-E3, E2-E3

Poznámka - vztahy M:N ČTENÁŘ M SI_REZERVOVAL N KNIHA DATUM_REZ ČTENÁŘ 1 N N 1 REZERVACE CISLO_REZ KNIHA DATUM_REZ

Slabý entitní typ některé entity nemohou být jednoznačně identifikovány svým klíčem, potřebují k identifikaci klíč jiné entity jsou to tzv. slabé entitní typy a jsou identifikačně závislé na jiném entitním typu značí se obdélníkem s dvojitou čarou KOPIE (1,1) JE_OD (0,n) FILM ČÍSLO_KOPIE JMÉNO

Příklad: Slabý entitní typ v kině máme tři kopie filmu Amadeus s čísly kopie 1,2,3 a dvě kopie filmu Piano s čísly 1,2 k jednoznačné identifikaci kopie tedy nestačí její číslo, je nutné připojit identifikaci filmu, od kterého je příslušná kopie

Reprezentace slabého entitního typu v relačním modelu KOPIE (1,1) JE_OD (0,n) FILM ČÍSLO_KOPIE JMÉNO FILM(JMÉNO) KOPIE(ČÍSLO_KOPIE,JMÉNO)

Reprezentace více-árního vztahu IDZ ZÁKAZNÍK DATUM ČERPÁ SLUŽBA PROVOZOVNA IDS ČP

Reprezentace více-árního vztahu ZÁKAZNÍK(IDZ) PROVOZOVNA(ČP) SLUŽBA(IDS) ČERPÁ(IDZ,ČP,IDS,DATUM)

Reprezentace více-árního vztahu IDZ, ČP, IDS jsou cizí klíče klíčem relace ČERPÁ je složený klíč -čtveřice atributů (IDZ, ČP, IDS, DATUM) čtveřice musí být v tabulce (relaci) unikátní pokud by klíčem relace ČERPÁ byla trojice (IDZ, ČP, IDS), mohl by zákazník čerpat službu v provozovně pouze jeden den trojice musí být unikátní, v tabulce nesmí být dva záznamy se stejnou trojicí (IDZ,ČP,IDS) a různým datem je-li klíčem čtveřice, nelze čerpat jednu službu v určité provozovně jedním zákazníkem vícekrát denně někdy to může být pravidlem (integritní omezení)

Jiné řešení místo vztahu ČERPÁ zavedeme entitní typ ČERPÁNÍ s primárním klíčem např. POŘAD_ČÍSLO a binárními vztahy pak lze čerpat jednu službu v určité provozovně jedním zákazníkem vícekrát denně

IDZ Jiné řešení ZÁKAZNÍK (0,n) ČERPÁ DATUM PROVOZOVNA (1,1) ČERPÁNÍ (1,1) (1,1) (0,n) (0,n) POŘAD_ČÍSLO SLUŽBA IDS ČP

Reprezentace více-árního vztahu JMÉNO DODÁVÁ NÁZEV OBCHODNÍK ZBOŽÍ IDO KAT_Č DODÁVÁ(IDO_KDO,IDO_KOMU,KAT_Č)

Reprezentace více-árního vztahu IDO_KDO, IDO_KOMU, KAT_Č jsou cizí klíče klíčem relace DODÁVÁ je složený klíč - trojice atributů (IDO_KDO, IDO_KOMU, KAT_Č) trojice musí být v tabulce (relaci) unikátní

OBCHODNÍK IDO JMÉNO 1 Potkan & syn 2 Návnada, nástraha, past ZBOŽÍ KAT_Č Název 1 Pastička 2 Jed na potkany DODÁVÁ IDO_KDO IDO_KOMU KAT_Č 1 2 1 všechny atributy relace DODÁVÁ jsou cizí klíče

Reprezentace binárního vztahu mezi entitami stejného typu NÁZEV JE_SOUČÁSTÍ N DÍL ID_D 1 SE_SKLÁDÁ vztah 1:N do relace DÍL přidám cizí klíč: DÍL(ID_D,NÁZEV,ID_PATŘÍ)

DÍL ID_D NÁZEV ID_PATŘÍ 1 Čerpadlo NULL 2 Hřídel 1 3 Lopatkové kolo 1 4 Ložisko 6202 1 hřídel s ID=2 je součástí Čerpadla (ID=1) lopatkové kolo s ID=3 je součástí Čerpadla (ID=1)...