Poadovan vlastnosti ER modelu korektnost smyslupln a jednoznan
- Slides: 25
Požadované vlastnosti E-R modelu • • • korektnost (smysluplná a jednoznačná sémantika) klíče, kardinality snaha o minimalizaci E-R diagramu čitelnost E-R diagramu kontrola funkčních závislostí (později) Rada: Postupovat shora dolů – diagram postupně zjemňovat 6/15/2021 Databázové systémy UIN 010 1
2
3
Datové modely • Síťový databázový model • Hierarchický databázový model • Relační databázový model • Objektově-relační databázový model • Objektově-orientovaný databázový model 6/15/2021 Databázové systémy UIN 010 4
Relační databázový model Každý datový model musí definovat: - povolené datové struktury - povolené operace na nich - integritní omezení Datové struktury: n-ární relace (v podstatě tabulky) • relace = množina prvků tvaru (a 1, a 2, … an) … n-tice • n je řád relace • ai dom (Ai), kde Ai je pojmenování atributu a dom označuje doménu atributu (množina hodnot, jichž může atribut Ai nabývat) • ai - hodnota atributu Ai v dané n-tici • atribut Ai dán dvojicí Ai: Dom(Ai) 6/15/2021 Databázové systémy UIN 010 5
Schéma relace R(A 1: D 1, A 2: D 2, … An: Dn), Di = dom (Ai) pro i = 1, … n Zkrácený zápis schématu: R(A 1, A 2, … An) nebo pouze R(A) Pozn. Matematicky se jedná o podmnožinu kartézského součinu D 1 D 2 … Dn Relace nad schématem R = instance relace tj. {t; t = {<A 1, a 1>, . . . , <An, an>}, ai Di, i=1, . . . , n} Relační schéma databáze = konečná množina relačních schémat např. DB = {R 1, R 2, . . . , Rk} Relační databáze nad schématem DB = instance relace tj. množina relací o k prvcích např. {S 1 , S 2 , . . . , Sk}, kde Sj je relace nad schématem Rj 6/15/2021 Databázové systémy UIN 010 6
Tabulková terminologie schéma relace záhlaví tabulky n-tice řádky tabulky atributy sloupce tabulky Pozor: V relaci nezáleží na pořadí řádků, ale v tabulce je vždy dané nějaké pořadí sloupců a řádků. Relace neobsahuje duplicitní n-tice, ale v tabulce se mohou vyskytovat duplicitní řádky. Tabulka je pouhou reprezentací databázové relace. 6/15/2021 Databázové systémy UIN 010 7
Příklady Schéma relací KINO (Název_k: STRING(25), Adresa: STRING(50), Kapacita: INTEGER) FILM (Název_f: STRING(40), Rok: INTEGER, Země: STRING (30)) PROGRAM (Název_k: STRING(25), Název_f: STRING(40), Datum: STRING(10), Čas: STRING(5)) Relační schéma databáze {KINO, FILM, PROGRAM} Konkrétní n-tice z relace nad schématem KINO a FILM (instance relace) (Blaník, Václavské nám. 25, 420) (Gladiátor, 2000, USA), ale i (dhasudh, 18569, datdtyay) 6/15/2021 Databázové systémy UIN 010 8
Integritní omezení 1. tvrzení specifikující znalosti o datech v databázi 2. v RMD logické podmínky, jež musejí být na datech splněny Instance relace vyhovující integritním omezením se označují jako přípustné. Důležitá integritní omezení Specifikace klíče schématu relace R Referenční integrita 6/15/2021 Databázové systémy UIN 010 9
Specifikace klíče Definice: Klíč K schématu R(A) je minimální množina atributů z A, jejichž hodnoty budou jednoznačně určovat n-tice instance relace R. Důležité pojmy - primární klíč - nadklíč - jednoduchý vs. složený klíč - klíčový vs. neklíčový atribut 6/15/2021 Databázové systémy UIN 010 10
Referenční integrita = integritní omezení popisující vztah mezi daty obsaženými ve dvou relacích - týká se atribut označovaného jako cizí klíč Př. FILM (Jméno_f, Herec, Rok) PROGRAM (Název_k, Jméno_f, Datum) V jazyce SQL: FOREIGN KEY (Jméno_f) REFERENCES FILM (Jméno_f) Kontrola RI se uplatňuje při vkládání dat do závislé relace PROGRAM a při odstraňování záznamů z hlavní relace FILM. 6/15/2021 Databázové systémy UIN 010 11
Transformace E-R schématu • reprezentace silného entitního typu • reprezentace vícehodnotových atributů • reprezentace skupinových atributů • reprezentace vztahů • reprezentace slabého entitního typu • reprezentace ISA-vztahu 6/15/2021 Databázové systémy UIN 010 12
Reprezentace silného entitního typu • transformace na relace resp. tabulky • atributy tvoří schéma • identifikátor se překládá na klíč (při složitém klíči se vyplatí zavést umělý klíč jednoduchý) Zaměstnanec Osobní_č Jméno Příjmení Zaměstnanec (Osobní_č, Jméno, Příjmení) 6/15/2021 Databázové systémy UIN 010 13
Reprezentace vícehodnot. atributů • je-li dáno maximum hodnot, lze zavést příslušný počet atributů do schématu relace (nevyužité mají hodnotu NULL) • obvykle umisťujeme do samostatné tabulky s vhodně generovaným klíčem obsahujícím klíč odpovídajícího entitního typu Osobní_č Zaměstnanec Děti Zaměstnanec (Osobní_č, …) Děti (Osobní_č, Rodné_číslo_dítěte, …) 6/15/2021 Databázové systémy UIN 010 14
Reprezentace skupin. atributů • rozepisují se do atomických složek nebo se pro ně zavede samostatná tabulka Zaměstnanec Osobní_č Město Ulice, číslo PSČ Zaměstnanec (Osobní_č, …) Adresa (Osobní_č, Město, Ulice + číslo, PSČ) 6/15/2021 Databázové systémy UIN 010 15
Reprezentace vztahu 1: 1 • reprezentace závisí na tom, zda je členství ve vztahu povinné či nikoli Nepovinném členství pro oba typy samostatná tabulka klíčovaná klíčem kteréhokoliv ze dvou zúčastněných typů Povinné členství pro jeden typ přidání atributů vztahu včetně klíče nezávislého typu do tabulky pro existenčně závislý (s povinným členstvím) Povinné členství pro oba typy jediné schéma pro oba entitní typy i vztah 6/15/2021 Databázové systémy UIN 010 16
Reprezentace vztahu 1: 1 Zaměstnanec (0, 1) používá (0, 1) Vůz Zaměstnanec (Osobní_č, Jméno, …) Vůz (SPZ, Výrobce, …) Používá (Osobní_č, SPZ, …) Zaměstnanec (0, 1) používá (1, 1) Vůz Zaměstnanec (Osobní_č, Jméno, …) Vůz (SPZ, Výrobce, …, Osobní_č) Zaměstnanec (1, 1) používá (1, 1) Vůz Zaměstnanec (Osobní_č, Jméno, …, SPZ, …) 17
Reprezentace vztahu 1: N • reprezentace závisí pouze na typu determinantu vztahu Povinné členství determinantu vztahu ke schématu determinantu přidáme atributy klíče druhého typu, primárním klíčem zůstává klíč determinantu Nepovinné členství determinantu vztahu nové schéma pro vztah obsahující vztahové atributy a identifikační atributy obou typů, primárním klíčem bude klíč determinantu 6/15/2021 Databázové systémy UIN 010 18
Reprezentace vztahu 1: N Pacient (1, 1) umístěn (x, N) Pokoj Pacient (Rodné_číslo, …, Číslo pokoje) Pokoj (Číslo_pokoje, Počet_lůžek, …) Pacient (0, 1) umístěn (x, N) Pokoj Pacient (Rodné_číslo, …) Pokoj (Číslo_pokoje, Počet_lůžek, …) Umístěn (Rodné_číslo, Číslo_pokoje, …) 6/15/2021 Databázové systémy UIN 010 19
Reprezentace vztahu M: N • bez ohledu na typy členství tři schémata, třetí vztahové obsahuje klíče z obou typů a vztahové atributy, primárním klíčem je dvojice příslušných primárních klíčů Zaměstnanec (x, N) pracuje (x, M) Oddělení Zaměstnanec (Osobní_č, Jméno, …) Oddělení (Číslo_odd, Název, …) Pracuje (Osobní_č, Číslo_odd, Datum, …) 6/15/2021 Databázové systémy UIN 010 20
Reprezentace n-árního vztahu • bez ohledu na typy členství n+1 schémat, poslední vztahové obsahuje identifikační klíče všech typů a vztahové atributy • primární klíč však nemusí obsahovat všechny zmíněné cizí klíče, závisí na poměrech v n-árním vztahu C 1 A 6/15/2021 M R N B Databázové systémy UIN 010 A (A 1, A 2, …) B (B 1, B 2, …) C (C 1, C 2, …) R (A 1, B 1, C 1) 21
Reprezentace slabého entitního typu • do tabulky se přidají identifikátory identifikačních vlastníků Exemplář (1, 1) (0, n) Kniha (ISBN, Název, Autor, …) Exemplář (Č_exempláře, ISBN, Datum nákupu, …) 6/15/2021 Databázové systémy UIN 010 22
Reprezentace ISA-vztahu • obvykle schémata pro nadtyp i každý podtyp, podtyp dědí klíč z nadtypu OSOBA Osoba (Osobní_č, Jméno, …) Učitel (Osobní_č, Titul, …) Student (Osobní_č, Obor, Ročník …) ISA UČITEL 6/15/2021 STUDENT Databázové systémy UIN 010 23
Funkční závislosti • definována mezi dvěma množinami atributů v rámci jednoho schématu • platí obecně Definice: Nechť A= {A 1, . . . , An} je relační schéma, X, Y podmnožiny A. Řekneme, že Y funkčně závisí na X, značíme X->Y, jestliže pro každou instanci r nad A platí: t 1, t 2 r: (t 1[X] = t 2[X] t 1[Y]= t 2[Y]) 6/15/2021 Předmět Učitel Místnost Matematika Záruba S 7 Matematika Záruba S 1 Dějepis Hořká S 2 Dějepis Hořká S 1 Databázové systémy UIN 010 Jeden předmět učí nejvýše jeden učitel, jeden učitel učí více předmětů Předmět –> Učitel 24
Definice pojmů klíč, nadklíč Definice pojmu nadklíč a klíč s pomocí funkčních závislostí Nechť A={A 1, . . . , An} je relační schéma. Nadklíčem schématu A rozumíme každou podmnožinu množiny A, na níž A funkčně závisí. Klíčem schématu A je takový nadklíč schématu A, jehož žádná vlastní podmnožina není nadklíčem A (tj. minimální nadklíč). 6/15/2021 Databázové systémy UIN 010 25
- Model iso/osi
- Szablon modelu biznesowego przykład
- Dyskretyzacja modelu
- Identifikacija sa agresorom
- Zindywidualizowaną ścieżka kształcenia forum
- Piotr ciżkowicz
- Transformacja modelu
- Licząc od dołu warstwa sieci modelu iso/osi to warstwa
- Warstwy modelu iso/osi i tcp/ip
- W której warstwie modelu osi pracują routery?
- Reszty modelu ekonometrycznego
- Struktura prezentace
- Hydrostatický tlak vzorec
- Prízvučné a neprízvučné slabiky príklad
- Charakter a temperament
- Zvuk je
- Melancholik kladné vlastnosti
- Množiny bodů dané vlastnosti pracovní list
- Protilahle strany
- Vlastnosti charakteristika
- Cholerik kladné vlastnosti
- Vlastnosti vlka v bajkách
- Základní vlastnosti kapalin
- Charakter osobnosti
- Stavba oka fyzika
- Vlastnosti zvuku