Návrh datového modelu

Rozměr: px
Začít zobrazení ze stránky:

Download "Návrh datového modelu"

Transkript

1 Návrh datového modelu

2 Co nás dnes čeká Pohledy na data Konceptuální datové modelování Entitně-relační schéma Prvky E-R schématu, konvence Maticové diagramy a ERDish věty Pokročilé prostředky E-R diagramů Převod do fyzického modelu DDL operace

3 Schéma databáze Výsledkem databázového modelování není model, ale schéma databáze V obecné rovině lze uvádět 3 pohledy na data Vnější pohled aplikační úroveň Konceptuální schéma logika modelu Fyzické schéma vlastní uložení dat Pro datové modelování je nutné pochopit a rozpoznat informace, to jak věci fungují

4 Konceptuální model To, jak by to mohlo fungovat, lze nazvat konceptuálním modelem Vlastní implementace je pak fyzický model Co je konceptuální model přesněji: Orientovaný na objekty (entity a vztahy mezi nimi) Neřeší vlastní implementaci Pokrývá současné potřeby s možností dalšího rozvoje Výsledkem aplikace konceptuálního modelu je konceptuální schéma

5 Konceptuální modelování Přesně popisuje potřeby uchování dat Podporuje diskusi komunikaci, předchází chybám a nedorozuměním Definuje výchozí dokumentaci ideálního systému de facto standardem pro jeho použití jsou Entitně Relační Diagramy (ERD)

6 Fyzický model databáze Vlastní návrh implementace v konkrétním databázovém systému Obsahuje Tabulky, Struktury objektů a Integritní omezení Studuje (Kód_studenta: Int, Kód_Předmětu: Int)

7 Integritní omezení Jsou definována na konceptuální i fyzické úrovni Vymezují korektní databázi Umožňují vkládat pouze data, která vyhovují předem definovaným kritériím Např. Kód_studenta jednoznačně identifikuje jednotlivé záznamy tabulky Student, Kód_Předmětu určuje jednotlivé záznamy tabulky Předmět

8 Entity Představují objekty/osoby/věci, o kterých je třeba uchovávat informace zaznamenávané podle skutečnosti Pojmenování souboru několika podobných objektů Lze přirovnat ke třídám objektů stejného typu FILM, ZÁKAZNÍK, ZAMĚSTNANEC, ZVÍŘE Instance je jeden případ výskytu entity

9 Entity Instance OSOBA VÝROBEK TYP VÝROBKU ZAMĚSTNÁNÍ KONCERT AUTO Larry Ellison Pilsner Urquell Pivo Popelář Umakart v Roxy Porsche

10 Atributy Blíže popisují vlastnosti entit i vztahů Kvantifikují příslušnou entitu Kvalifikují příslušnou entity Zařazují a zpřesňují příslušnou entitu Nabývají hodnot z dané domény Je jím právě jedna hodnota, číslo, řetězec znaků, datum, obrázek, zvuk,... příslušného datového typu Integritní omezení jsou pak přídavná pravidla pro zajištění souladu modelu s modelovanou realitou

11 Atributy příklad OSOBA jméno příjmení datum narození pohlaví řetězec obsahující písmena řetězec obsahující písmena datum muž nebo žena řetězec v určitém formátu

12 Identifikátory Co je to UID Atribut nebo kombinace atributů jednoznačně odlišující jednu instanci od ostatních Jedinečný identifikátor právě jedné instance Složený identifikátor Kombinace více atributů, když jeden atribut k identifikaci nestačí Např. název ulice jednoznačně neidentifikuje konkrétní ulici, protože ulice se stejným názvem může být ve dvou různých městech. Ulice + Město už jednoznačná informace je. Lístek na koncert, jízdenka na SC vlak,...

13 Umělý a druhotný identifikátor Umělý identifikátor V situacích, kde není možné použít žádný z atributů, ani jejich kombinaci Vhodné pro identifikaci osob, RČ nemusí být vždy ideální. Můžeme identifikovat studenta jménem a příjmením? Z důvodu efektivity to bývá zpravidla celé číslo Druhotný identifikátor V situacích, kdy máme víc možností UID Např. nakupujete přes ebay? Identifikace přes , ale i uživatelské číslo Další kandidáti na UID jsou druhotné identifikátory OBUV * barva * velikost * materiál * styl ZÁKAZNÍK # ID (#) * jméno * příjmení

14 Vztahy Představují propojení jednotlivých entit Vždy existují mezi dvěma entitami (entita může mít i vztah sama se sebou) Vztahy jsou vždy pojmenovány na obou svých stranách STUDENT (entita) STUDUJE (vztah) PŘEDMĚT (entita) a PŘEDMĚT (entita) JE STUDOVÁN (vztah) STUDENTEM (entita)

15 Povinnost, neboli členství Povinnost je determinována na základě instancí příslušných entit Povinné členství = všechny výskyty členské entity musí být zapojeny do nějakého výskytu vztahu Nepovinné členství = jednotlivé výskyty členské entity mohou být zapojeny do nějakého výskytu vztahu Stanovuje se na základě vhodných otázek, např. Musí mít každý zaměstnanec práci/funkci? Musí být úkol splněn nějakým zaměstnancem?

16 Příklad členství Každý zaměstnanec MUSÍ pracovat v oddělení. Každé oddělení MUSÍ zaměstnávat zaměstnance. Každý sudí MŮŽE rozhodovat utkání. Každému utkání MUSÍ být přiřazen sudí. oddělení

17 Kardinalita Popisuje, kolikrát se každá instance dané entity může účastnit daného typu vazby Např. jeden konkrétní student může studovat několik předmětů a jeden předmět může být studován několika studenty Rozlišujeme 3 druhy násobností: 1:1, 1:N M:N Vazby M:N jsou později dekomponovány na tzv. průnikový typ entity, neboli asociační entitu, protože je nelze realizovat v relační databázi

18 Entity a členství Entity zapisujme jako obdélníky se jménem v jednotném čísle psaným velkými písmeny Povinné atributy značíme * Volitelné Unikátní identifikátory označujeme #

19 Vztahy Vztahy kreslíme jako linie spojující entity Linie mohou být čárkované (nepovinnost) nebo plné (povinnost) Tzv. vidlice ( ) představuje násobnost

20 Maticové diagramy Způsob pro identifikaci vztahů mezi entitami Jsou velmi vhodné zejména pro rozsáhlejší schémata Nepokrývají povinnosti ani násobnosti vazeb

21 Maticové diagramy - příklad Mějme následující entity zákazník, země, památka a následující zadání: "Pracuji pro cestovní kanceláře. Uchovávám záznam ze zemí, které naši zákazníci navštívili a památek, které zákaznici viděli v každé zemi. Pomáhá nám přizpůsobit nabízené výlety." zákazník země památka zákazník země památka

22 zákazník země památka zákazník navštívil viděl země památka byla navštívena byla shlédnuta se nachází v má Maticové diagramy

23 ERDish Popis vztahů mezi entitami ve slovním vyjádření Pomáhá pro správné pochopení modelované úlohy i lidem mimo oblast IT Preventivní zamezení chyb

24 Jak na ERDish? Části ERDish vět: 1. Každý 2. Entita A 3. Členství (může/musí) 4. Jméno vazby 5. Kardinalita 6. Entita B a také opačným směrem

25 Jak na ERDish? ZAMĚSTNANEC pracuje v zaměstnává ODDĚLENÍ Každý zaměstnanec (entita) musí (plná čára) pracovat v (jméno vazby) v právě jednom (jednoduchá čára) oddělení (název entity).

26 Jak na ERDish? ZAMĚSTNANEC pracuje v zaměstnává ODDĚLENÍ Každé oddělení (entita) může (přerušovaná čára) zaměstnávat (jméno vazby) jednoho nebo více (vidlice) zaměstnanců (název entity).

27 ERDish Po přepsání: Každý ZAMĚSTNANEC (entita A) musí pracovat v právě jednom ODDĚLENÍ (entita B). Každé ODDĚLENÍ (entita B) může zaměstnávat jednoho nebo více ZAMĚSTNANCŮ (entita A).

28 Postup E-R modelování Seznam entit Určení atributů (* povinné/ o volitelné/ # unikátní) Matice vazeb ERDish Konceptuální model (ER Diagram) Doplnění integritních omezení

29 Vytvořte ERD pro následující problém Firma má své zázemí v několika budovách. Budovy jsou vždy organizovány do vyšších celků nazývaných areály. Budovy mohou mít jedna nebo více podlaží s určitým označením. Celé podlaží patří vždy k určitému oddělení. Oddělení se může nacházet na více podlažích Na každém patře může být několik místností, každá místnost je určitého typu (dílna, sklad, učebna, kancelář, laboratoř, šatna). Každá místnost má přidělenu osobu, která je za ni zodpovědná. Každá osoba může pracovat v několika místnostech, ale pouze jedna z nich je primární. Každý člověk je zaměstnán alespoň v jednom oddělení na určité pracovní pozici.

30 Supertyp a subtyp Jde reakci na reálné situace: způsob platby (hotovost, kartou, převodem,...), časový údaj (okamžik, den, týden, měsíc, rok), zvířata (obratlovci, bezobratlí), uživatel systému (zaměstnanec, zákazník) Instance supertypu se mohou lišit svými atributy a/nebo vztahy. Příklad platba, stejné jsou datum platby, částku, apod. Jiný typ platby => jiné atributy

31 Supertyp a subtyp Logické rozdělení entity na podcelky. Například když dílčí instance mají specifické vlastnosti (viz jednotlivé platby). Entitu označujeme jako supertyp, každý podcelek je pak subtyp. Platba Hotově Kartou PayPal

32 Subtyp Přebírá všechny atributy Přebírá všechny vztahy Může mít vlastní atributy i vazby Je znázorněn uvnitř supertypu Nikdy nevzniká samostatně Zvířata Obratlovci Bezobratlí

33 Zanoření (vhnízdění) subtypů V některých případech je pro lepší názornost možné používat více úrovní zanoření. Je důležité, aby to bylo smysluplné!!! Zvířata Obratlovci Ptáci Savci Plazi Ostatní Bezobratlí

34 Jak si to představit

35 Co s tím Subtyp je možné najít u každé entity Ne vždy je nutné jej použít Kdy jej použít vyplývá z reality, kterou modelujeme Identifikace subtypu Je subtyp součástí supertypu? Vyčerpali jsme opravdu všechny možnosti? Náleží příklad instance do právě jednoho subtypu?

36 Přenositelnost u vztahů Povinnost styl bez písně? Kardinalita kolik písní je stejného stylu? A kolik stylů může mít jedna píseň? Můžeme změnit styl písně?

37 Tzv. silné a slabé vazby Nepřenositelné vztahy

38 Obloukové vazby (Arcs) Pro vyjádření možnosti volby u vazeb Oblouk vždy náleží ke konkrétní entitě Zahrnují dvě a více vazeb Entita může využívat i více obloukových vazeb Oblouková vazba má vždy stejnou násobnost Supertyp i subtyp mohou být znázorněny pomocí obloukových vazeb (arc)

39 Použití obloukových vazeb

40 Hierarchické vztahy Nastává v případě, kdy je instance dané entity ve vztahu sama k sobě Příkladem je následující zadání Potřebujeme sledovat informace o našich zaměstnancích. Každý zaměstnanec má právě jednoho nařízeného, kromě prezidenta. Každý manažer může řídit několik zaměstnanců.

41 Hierarchické struktury Typicky organizační schéma společnosti Pokrytí budov včetně místností

42 Rekursivní struktury jiný způsob zaznamenání hierarchií jak? Máme za úkol namodelovat zaměstnaneckou strukturu Zkuste se zamyslet, který přístup je lepší a kdy?

43 Normální formy Vychází z návrhu relačního schématu Při návrhu relačního schématu hledáme funkční závislosti mezi atributy Funkční závislost lze definovat formálně X Y t 1,t 2 r: t 1 X = t 2 X t 1 Y = t 2 Y Intuitivně však pojem závislosti chápeme (např. PSČ město) Normální formy se snaží zjednodušit návrh

44 1. normální forma (NF) Všem atributům jsou jako jejich domény přiřazeny pouze atomické typy Např. adresa nebo celé jméno uživatele nebo e- mailové adresy nejsou atributy s atomickým typem, tedy celý návrh nesplňuje 1. normální formu Předpoklad 1. normální formy lze při návrhu obvykle snadno dodržet

45 První normální forma vyžaduje, aby neexistovaly vícehodnotové atributy. Proč není tato tabulka v 1. NF? Jak docílit, aby byla? ID_ZAKAZNIKA JMENO PRIJMENI ZBOZI 101 Marta Nováková stůl, lampa 102 Josef Koudelka postel, skříň, stůl 103 Johan Gregor Mendel židle Nevhodné řešení ID_ZAKAZNIKA JMENO PRIJMENI ZBOZI1 ZBOZI2 ZBOZI3 101 Marta Nováková stůl lampa 102 Josef Koudelka postel skříň stůl 103 Johan Gregor Mendel židle Tabulky splňují 1.NF ID_ZAKAZNIKA ZBOZI ID_ZAKAZNIKA JMENO PRIJMENI 101 Marta Nováková 102 Josef Koudelka 103 Johan Gregor Mendel 101 stůl 101 lampa 102 postel 102 skříň 102 stůl 103 židle

46 2. normální forma Pro splnění 2. NF musí být schéma v 1. NF Schéma nesmí obsahovat žádné částečné závislosti neklíčových atributů na klíči Zavedením jednoduchých klíčů a splněním 1. NF lze jednoduše dosáhnout 2. NF

47 Příklad Program Název_D Jméno_H Adresa Datum Městské Pastorkyňa Lidická Městské Tři mušketýři Lidická Národní Tři mušketýři Roosvelltova Národní Pastorkyňa Roosvelltova Národní Mary Poppins Roosvelltova Redundance

48 Příklad - řešení Program Název_D Jméno_H Datum Městské Pastorkyňa Adresář Název_D Adresa Městské Lidická 16 Národní Roosvelltova 3 Městské Tři mušketýři Národní Tři mušketýři Národní Pastorkyňa Národní Mary Poppins Intuitivně dekompozicí, dojde k odstranění závislosti neklíčového atributu (Adresa) na podklíči (Název_D)

49 3. normální forma Pro splnění 3. NF musí být schéma v 2. NF Dále nesmí být žádný neklíčový atribut tranzitivně závislý na žádném klíči schématu Tedy např. existence atributů PSČ a města uvnitř relace uživatel s klíčem rodné číslo odporuje 3. NF, protože město funkčně závisí na PSČ Pro zavedení 3. NF je třeba vyrobit číselníky

50 Podniková pravidla Co je cílem konceptuálního modelování? Uchování a poskytování informací Ve schématech uchováváme také integritní omezení (IO) Pro správné schéma databáze je nutné pokrýt i podniková pravidla Procedurální, často spojené s časem Strukturální, jaká informace má být uložena

51 Podniková pravidla Strukturované uvádějí typy informací, jež je možno pro daný atribut uchovávat (jen čísla, časové údaje od , primární klíč z jiné tabulky,...) Procedurální jedná se o pracovní postupy související s provozem systému (sumační údaje z prodeje se ukládají vždy prvního v každém měsíci) Strukturální podniková pravidla je možné téměř vždy možné zanést do ERD. Některá z procedurálních podnikových pravidel nelze do diagramu zaznamenat, ale i tak musí být zdokumentována.

52 Modelování historických dat Kdy musíme počítat s historií? Budou data auditována? Podléhají data času? Musíme udržovat vývoj v čase a jak dlouho? Co když budeme chtít sledovat výplaty zaměstnanců?

53 Půjčovna Jak namodelujme půjčovnu šperků?

54 Půjčovna Jak namodelujme půjčovnu šperků?

55 Modelování času Kdy použijeme datový typ DATE a den jako entitu? co je nové entitě špatně? Nápověda 3NF

56 Omezení související s časem

57 Modelování vývoje ceny Nejen cen, ale také vývojových ukazatelů Zavedeme si tzv. historickou entitu Co si uvědomit Z Bc. na Ing., co je dobré vědět? Sleva u obchodních aplikacích jako e-shop Kam sledování ceny zařadíme? A co když zákazník vrací zboží?

58 Přenesená závislost Jaké atributy sledovat? Čas u prodeje Čas platné ceny

59 Žurnálování Opomíjené při návrhu schématu databáze Používáme vždy, když uživatelé mají umožněno zásadně měnit data aplikace. Vytváření logu/žurnálu Uchováváme předchozí hodnotu, ale také kdo změnu provedl

60 Na společné procvičení Jsme taneční studio a nabízíme taneční kurzy pro dospělé. Kurzy jsou rozděleny podle náročnosti do několika kategorií. Pro jednotlivé kategorie jsou určeny tance, které jsou vyučovány. Jeden tanec se může vyskytnout ve více kategoriích (pouze v jiné náročnosti). Za jednotlivé kurzy jsou zodpovědní lektoři, kteří řídí výuku. Vždy je jeden hlavní a jeden pomocný. Hlavní a pomocný lektor musejí být opačného pohlaví. U jednotlivých kurzů evidujeme, který den v týdnu probíhají a v kolik hodin, kolik je lekcí a datum, kdy kurz začíná a kdy končí. Dále evidujeme naše tanečníky. O nich známe jméno, příjmení a u některých i e- mail. Chceme vědět, do kterých kurzů chodí.

61 Převod ERD do fyzického modelu Konceptuální model (ER diagram) je převeden do fyzického modelu. Fyzický model bude implementován relační databází.

62 Změna terminologie Převod z konceptuálního modelu na fyzický s sebou přináší i změnu terminologie: Konceptuální entita instance atribut primární identifikátor sekundární identifikátor vztah Fyzický tabulka řádek sloupec primární klíč unikátní klíč cizí klíč

63 Notace zápisu tabulek První řádek obsahuje jméno tabulky Samotná tabulka popisující tabulku obsahuje tři sloupce: typ klíče (pk, uk, fk), povinnost (*, o) a název sloupce. Pro jména tabulek se užívají množná čísla. Jména sloupců zůstávají zachována kromě speciálních znaků (diakritiky). Mezery jsou nahrazeny podtržítkem.

64 Mapování vazeb Vztah vytváří cizí klíč, který musí být zanesen do jednoho nebo i více sloupců tabulky. V závislosti na povinnosti vztahu je pak dáno, může-li odpovídající sloupec nabývat hodnotu NULL.

65 Problémy při převodu Povinnost vazby se v rámci relační databáze dá vynutit pouze na jedné straně vazby (té, která se promítne jako nový sloupec). Nepřevoditelnou vazbu v relační databázi také nelze zachytit. Je potřeba použít nadstavbu v podobě dodatečného programování. Tyto skutečnosti je vždy vhodné zanést do dokumentace.

66 Mapování vazeb N:M

67 Mapování oblouků Při tomto mapování je nezbytné ohlídat, aby byl cizí klíč právě v jednom z odpovídajících sloupců. CHECK (pse_id IS NOT NULL AND phe_id IS NULL) OR (pse_id IS NULL AND phe_id IS NOT NULL)

68 Mapování supertypů a subtypů jedna tabulka Vytváří se vždy pouze jedna tabulka nezávisle na počtu subtypů. Tabulka bude obsahovat všechny sloupce odpovídající atributům supertypu s deklarovanými povinnostmi. Do tabulky budou zahrnuty také sloupce patřící jednotlivým subtypům. Tyto sloupce budou nepovinné. K těmto sloupcům se pak přidá ještě jeden, který bude povinný a bude specifikovat, o jaký subtyp se jedná.

69 Jedna tabulka pokračování Je potřeba se ujistit, aby docházelo ke vkládání odpovídajících hodnot daným subtypům pomoci omezení CHECK.

70 Kdy použít jednu tabulku? Použití jedné tabulky je běžná a flexibilní implementace. Je vhodné ji použít především když: Většina atributů je společných (nachází se v supertypu) Většina vazeb je na úrovni supertypu Podniková pravidla jsou globálně aplikovatelná na subtypy

71 Mapování supertypů a subtypů dvě tabulky Vytváří se tabulka pro každý subtyp. Ve skutečnosti tak může vzniknout tabulek více. Všechny tabulky budou obsahovat sloupce odpovídající atributům supertypu a k tomu sloupce odpovídající atributům daného subtypu. Povinnost zůstane zachována podle ERD. Stejným způsobem se pak mapují i vztahy mezi entitami do cizích klíčů

72 Dvě tabulky pokračování

73 Kdy použít dvě tabulky? Subtypy mají pouze málo společného. Vyskytuje se málo atributů v supertypu a více v subtypech Většina vztahů je na úrovni subtypů Podniková pravidla se mezi subtypy výrazněji liší

74 Mapování supertypů a subtypů oblouk Muže dojít k úpravě ERD a následně se postupuje jako by se jednalo o obloukovou vazbu.

75 Data definition language Datový slovník Vytváření, úprava a rušení nových objektů v datovém slovníku Objekty v datovém slovníku: tabulky, indexy, omezení, pohledy, sekvence, synonyma Obvykle se provádí rozdělení databáze na jednotlivá schémata (sessions), přičemž každé má svůj datový slovník RDBMS mají datový slovník přístupný jako zvláštní datového schéma

76 Tabulky (tables) představují relace vertikálně se dělí na řádky horizontálně se dělí na sloupce (tj. atributy) platí zde všechna pravidla o relacích a normálních formách zmíněná dříve (zejména definice domény, integritní omezení, klíče, atomičnost atd.) jedná se o jednorozměrný Excel

77 Jak na tabulku v SQL CREATE TABLE jméno (relace) Relace je představována popisem atributů a integritních omezení navzájem oddělených čárkou Popis atributu: jméno typ [impl. hod.] [omezení] Implicitní hodnota je definovatelná pomocí fráze DEFAULT hodnota

78 Jak pojmenovat tabulky Základní pravidla pro pojmenovaní tabulek lze shrnout na: Začínají písmenem Název musí mít mezi 1 a 30 znaky Obsahují pouze znaky A-Z, a-z, 0-9, _, $ a # Nesmí mít stejný název jako jiný objekt vlastněný stejným uživatelem Nesmí být tvořeno vyhrazenými klíčovými slovy Názvy nejsou Case-Sensitive Volte popisná jména

79 Základní datové typy V jednotlivých DB systémech mohou být rozdíly v názvech. Zde uvedené platí pro dbs Oracle. Znakové typy: CHAR(n), VARCHAR2(n) Číselné typy: NUMBER(prec, scale), INT, DECIMAL, FLOAT, REAL, SMALLINT Typ datum a čas: DATE Velké objekty: LONG, LONG RAW, RAW(n) Rozsáhlé objekty: BLOB, CLOB, BFILE Vlastní definované typy Tabulkové a objektové typy

80 Definice integritního omezení Základní omezení označuje možnost existence nedefinovaného stavu atributu (NULL, NOT NULL), implicitně je NULL Další omezení lze zavést jako doplňující podmínku k doméně CHECK (podmínka) Každému atributu lze definovat klíč (primární PRIMARY KEY, unikátní UNIQUE nebo cizí klíč REFERENCES) Pojmenované omez. CONSTRAINT jméno

81 Vícesloupcová integrita Představuje integritní omezení definované jako atribut relace Může být definována jako primární klíč PRIMARY KEY(sloupce), unikátní klíč UNIQUE(sloupce), podmínku CHECK(podmínka) nebo jako cizí klíč FOREIGN KEY(sloupce) REFERENCES Zápis cizího klíče je REFERENCES tabulka(sloupce) [ON DELETE CASCADE SET NULL]

82 Příklad

83 Další příkazy DDL Rušení objektů: DROP objekt název Modifikace struktury tabulky: ALTER TABLE jméno operace Podporované operace: přejmenování, RENAME TO jméno přidání sloupců, ADD (definice relace) zrušení sloupců, DROP (sloupce) změna omezení sloupce, MODIFY (relace) přejmenování sloupce RENAME COLUMN jméno TO jméno

84 Přihlašovací údaje

85 Přihlašovací údaje Username: c##jmeno Password: pwjmeno Hostname: trust.mendelu.cz Port: 1521 SID: trust

86

Databázové systémy I. 3. přednáška

Databázové systémy I. 3. přednáška Databázové systémy I. 3. přednáška Co nás dnes čeká Procvičení datového modelování Převod z logického do fyzického modelu Co víme z minule Co je to entita a jaké má vlastnosti? Co je to vztah a jaké má

Více

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

Úvod do databázových systémů Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 8 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování Entita Entitní typ

Více

Návrh datového modelu

Návrh datového modelu Návrh datového modelu Co nás čeká Pohledy na data Konceptuální datové modelování Entitně-relační schéma Prvky E-R schématu, konvence Maticové diagramy a ERDish věty Pokročilé prostředky E-R diagramů Převod

Více

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

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů. Modely datové Existují různé úrovně pohledu na data. Nejvyšší úroveň je úroveň, která zachycuje pouze vztahy a struktury dat samotných. Konceptuální model - E-R model. Další úrovní je logická úroveň Databázové

Více

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal Databázové systémy - SQL * definice dat * aktualizace * pohledy Tomáš Skopal Osnova přednášky definice dat definice (schémat) tabulek a integritních omezení CREATE TABLE změna definice schématu ALTER TABLE

Více

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

Obsah přednášky. Databázové systémy RDBMS. Fáze návrhu RDBMS. Coddových 12 pravidel. Coddových 12 pravidel Obsah přednášky Databázové systémy Konceptuální model databáze Codd a návrh relační databáze fáze návrhu pojem konceptuální model základní pojmy entity, relace, atributy, IO kardinalita, 2 historie: RDBMS

Více

DBS Konceptuální modelování

DBS Konceptuální modelování DBS Konceptuální modelování Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze Michal.Valenta@fit.cvut.cz c Michal Valenta, 2010 BIVŠ DBS I, ZS 2010/11 https://users.fit.cvut.cz/

Více

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

Databáze I. Přednáška 4 Databáze I Přednáška 4 Definice dat v SQL Definice tabulek CREATE TABLE jméno_tab (jm_atributu typ [integr. omez.], jm_atributu typ [integr. omez.], ); integritní omezení lze dodefinovat později Definice

Více

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

Transformace konceptuálního modelu na relační Transformace konceptuálního modelu na relační Michal Valenta Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze c Michal Valenta, 2016 BI-DBS, LS 2015/16

Více

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

8.2 Používání a tvorba databází 8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam

Více

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

Obsah přednášky. Databázové systémy. Normalizace relací. Normalizace relací. Normalizace relací. Normalizace relací Obsah přednášky Databázové systémy Logický model databáze normalizace relací normální formy tabulek 0NF, 1NF, 2NF, 3NF, BCNF, 4NF, 5NF, DNF denormalizace zápis tabulek relační algebra klasické operace

Více

Databáze. Logický model DB. David Hoksza

Databáze. Logický model DB. David Hoksza Databáze Logický model DB David Hoksza http://siret.cz/hoksza Osnova Relační model dat Převod konceptuálního schématu do logického Funkční závislosti Normalizace schématu Cvičení převod do relačního modelu

Více

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

Primární klíč (Primary Key - PK) Je právě jedna množina atributů patřící jednomu z kandidátů primárního klíče. Primární a cizí klíč Kandidát primárního klíče (KPK) Je taková množina atributů, která splňuje podmínky: Unikátnosti Minimálnosti (neredukovatelnosti) Primární klíč (Primary Key - PK) Je právě jedna množina

Více

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

Databázové systémy Cvičení 5.2 Databázové systémy Cvičení 5.2 SQL jako jazyk pro definici dat Detaily zápisu integritních omezení tabulek Integritní omezení tabulek kromě integritních omezení sloupců lze zadat integritní omezení jako

Více

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: Anotace: CZ.1.07/1.5.00/34.0410

Více

Konceptuální modelování. Pavel Tyl 21. 3. 2013

Konceptuální modelování. Pavel Tyl 21. 3. 2013 Konceptuální modelování Pavel Tyl 21. 3. 2013 Vytváření IS Vytváření IS Analýza Návrh Implementace Testování Předání Jednotlivé fáze mezi sebou iterují Proč modelovat a analyzovat? Standardizované pracovní

Více

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í

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í 1 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Požadavky kreditového systému. Relační datový model, relace, atributy,

Více

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

Úvod do databázových systémů 6. cvičení 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]

Více

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

Relační databázový model. Vladimíra Zádová, KIN, EF, TUL- DBS Relační databázový model Databázové (datové) modely základní dělení klasické databázové modely relační databázový model relační databázový model Základní konstrukt - relace relace, schéma relace atribut,

Více

DBS Transformace konceptuálního schématu na

DBS Transformace konceptuálního schématu na DBS Transformace konceptuálního schématu na relační Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2012/13 https://edux.fit.cvut.cz/courses/bi-dbs/

Více

Databázové systémy trocha teorie

Databázové systémy trocha teorie Databázové systémy trocha teorie Základní pojmy Historie vývoje zpracování dat: 50. Léta vše v programu nevýhody poměrně jasné Aplikace1 alg.1 Aplikace2 alg.2 typy1 data1 typy2 data2 vytvoření systémů

Více

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

Úvod do databázových systémů Úvod do databázových systémů Databáze je dnes velmi často skloňovaným slovem. Co se pod tímto termínem skrývá si vysvětlíme na několika následujících stranách a cvičeních. Databáze se využívají k ukládání

Více

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE 2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE Studijní cíl Tento blok je věnován základní syntaxi příkazu SELECT, pojmům projekce a restrikce. Stručně zde budou představeny příkazy

Více

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

Databáze 2013/2014. Konceptuální model DB. RNDr. David Hoksza, Ph.D. Databáze 2013/2014 Konceptuální model DB RNDr. David Hoksza, Ph.D. http://siret.cz/hoksza Osnova Organizace Stručný úvod do DB a DB modelování Konceptuální modelování Cvičení - ER modelování Náplň přednášky

Více

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

A5M33IZS Informační a znalostní systémy. Relační databázová technologie A5M33IZS Informační a znalostní systémy Relační databázová technologie Přechod z konceptuálního na logický model Entitní typ tabulka Atribut entitního typu sloupec tabulky Vztah: vazba 1:1 a 1:N: Vztah

Více

DUM 12 téma: Příkazy pro tvorbu databáze

DUM 12 téma: Příkazy pro tvorbu databáze DUM 12 téma: Příkazy pro tvorbu databáze ze sady: 3 tematický okruh sady: III. Databáze ze šablony: 7 Kancelářský software určeno pro: 4. ročník vzdělávací obor: 18-20-M/01 Informační technologie vzdělávací

Více

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

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) Marketingová komunikace Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) 2. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Minulé soustředění úvod

Více

Návrh databázového modelu

Návrh databázového modelu Návrh databázového modelu Informační a znalostní systémy 1 2 Konflikty 3 návrh musí pokrývat požadavky zadavatele návrhbyměl reflektovat i možné budoucí poslání návrh od shora dolů zdola nahoru Vývoj modelu

Více

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

Materiál byl vytvořen v rámci projektu Nové výzvy, nové příležitosti, nová škola Materiál byl vytvořen v rámci projektu Nové výzvy, nové příležitosti, nová škola Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky Co je to databáze? Jaké

Více

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: Anotace: CZ.1.07/1.5.00/34.0410

Více

Relace x vztah (relationship)

Relace x vztah (relationship) Relace x vztah (relationship) Peter Chen, Peter Pin-Shan (March 1976): "The Entity-Relationship Model Toward a Unified View of Data". ACM Transactions on Database Systems 1. E-R diagram v Chennově notaci

Více

Konceptuální modelování a SQL

Konceptuální modelování a SQL Konceptuální modelování a SQL přednáška č.? 1/90 Vytváření IS Analýza Návrh Implementace Testování Předání SW Jednotlivé fáze mezi sebou iterují 2/90 Proč modelovat/analyzovat? Standardizované pracovní

Více

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

Databázové modelování. Analýza Návrh konceptuálního schématu Databázové modelování Analýza Návrh konceptuálního schématu 1 Vytváření IS Analýza Návrh Implementace Testování Předání SW Jednotlivé fáze mezi sebou iterují 2 Proč modelovat/analyzovat? Standardizované

Více

Mendelova univerzita v Brně Provozně ekonomická fakulta. Síť hotelů. Databázové systémy I

Mendelova univerzita v Brně Provozně ekonomická fakulta. Síť hotelů. Databázové systémy I Síť hotelů Databázové systémy I LS 2015/2016 Marek Migaš Patrik Musil Zadání: Naše celosvětová síť má tisíce hotelů na všech světadílech kromě Antarktidy. Pro naše zákazníky bychom chtěli vytvořit novou

Více

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL 4 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, datové typy, klauzule SELECT, WHERE, a ORDER BY. Doporučená

Více

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

Střední průmyslová škola Zlín VY_32_INOVACE_33_01 Škola Název projektu, reg. č. Vzdělávací oblast Vzdělávací obor Tematický okruh Téma Tematická oblast Název Autor Vytvořeno, pro obor, ročník Anotace Přínos/cílové kompetence Střední

Více

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR):

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR): Mezi příkazy pro manipulaci s daty (DML) patří : 1. SELECT 2. ALTER 3. DELETE 4. REVOKE Jaké vlastnosti má identifikující relace: 1. Je relace, která se využívá pouze v případě modelovaní odvozených entit

Více

RELAČNÍ DATABÁZOVÉ SYSTÉMY

RELAČNÍ DATABÁZOVÉ SYSTÉMY RELAČNÍ DATABÁZOVÉ SYSTÉMY VÝPIS KONTROLNÍCH OTÁZEK S ODPOVĚDMI: Základní pojmy databázové technologie: 1. Uveďte základní aspekty pro vymezení jednotlivých přístupů ke zpracování hromadných dat: Pro vymezení

Více

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:

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: Úvod do databází Základní pojmy Databáze je množina záznamů, kterou shromažďujeme za nějakým konkrétním účelem. Databáze používáme zejména pro ukládání obsáhlých informací. Databázové systémy jsou k dispozici

Více

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

Databázové systémy. Ing. Radek Holý Databázové systémy Ing. Radek Holý holy@cvut.cz Literatura: Skripta: Jeřábek, Kaliková, Krčál, Krčálová, Kalika: Databázové systémy pro dopravní aplikace Vydavatelství ČVUT, 09/2010 Co je relační databáze?

Více

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

Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky. Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky. Projekt ESF OP VK reg.č. CZ.1.07/2.2.00/28.0209 Elektronické opory a e-learning pro obory výpočtového

Více

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

Konceptuální datové modely používané při analýze Konceptuální datové modely používané při analýze Abstraktní datové typy jako definice domén atributů ADT (Abstraktní datový typ) zapouzdření datového typu lidský mozek je schopen řešit úlohy jen do určité

Více

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

Úvod do databázových systémů Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 3 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování 4 fáze vytváření

Více

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

Funkční schéma Datové schéma Integrita modelu s realitou Konceptuální modely Funkční schéma výsledek funkční analýzy a návrhu), Kdo bude používat aplikaci kategorie uživatelů pracovní postupy v organizaci, které mají být počítačově podporovány, událost, která

Více

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

Databázové systémy. Cvičení 2 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)}

Více

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

Databázové systémy. Cvičení 3 Databázové systémy Cvičení 3 Normální formy relací normální formy relací definují určité vlastnosti relací, aby výsledná databáze měla dobré vlastnosti, např. omezena redundance dat snažíme se převést

Více

Relační databáze. V dnešní době existuje řada komerčních DBMS, nejznámější jsou:

Relační databáze. V dnešní době existuje řada komerčních DBMS, nejznámější jsou: Relační databáze Pojem databáze, druhy databází Databází se myslí uložiště dat. V době začátků využívání databází byly tyto členěny hlavně hierarchicky, případně síťově (rozšíření hierarchického modelu).

Více

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.

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. Databáze Základní pojmy Pojem databáze označuje obecně souhrn informací, údajů, dat o nějakých objektech. Úkolem databáze je hlídat dodržení všech omezení a dále poskytovat data při operacích. Objekty

Více

Terminologie v relačním modelu

Terminologie v relačním modelu 3. RELAČNÍ MODEL Relační model reprezentuje databázi jako soubor relací. Každá relace představuje tabulku nebo soubor ( ve smyslu soubor na nosiči dat ). Terminologie v relačním modelu řádek n-tice ( n-tuple,

Více

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky Otázka 20 A7B36DBS Zadání... 1 Slovníček pojmů... 1 Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky... 1 Zadání Relační DB struktury sloužící k optimalizaci

Více

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

5. POČÍTAČOVÉ CVIČENÍ 5. POČÍTAČOVÉ CVIČENÍ Databáze Databázi si můžeme představit jako místo, kam se ukládají všechny potřebné údaje. Přístup k údajům uloženým v databázi obstarává program, kterému se říká Systém Řízení Báze

Více

Relační databázová technologie

Relační databázová technologie Relační databázová technologie Klíč: množina (možná jednoprvková) atributů (sloupců), jež jednoznačně idetifikuje danou entitu. Poznámky: 1. Daný entitní typ (tabulka) může mít více klíčů. Například (i)

Více

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

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3aph) 2. a 3. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Co nás čeká: 2. soustředění 16.1.2009

Více

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

Databáze I. 4. přednáška. Helena Palovská Databáze I 4. přednáška Helena Palovská palovska@vse.cz Mapování ER modelu do relačního DB schématu Od 80. let 20. stol. znám algoritmus, implementován v CASE nástrojích Rutinní postup s volbami rozhodnutí

Více

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

Kapitola 2: Entitně-vztahový model (Entity-Relationship model) Množiny entit (entitní množiny) Atributy - 2.1 - Kapitola 2: Entitně-vztahový model (Entity-Relationship model) Množiny entit Množiny vztahů Otázky návrhu Plánování mezí Klíče E-R diagram Rozšířené E-R rysy Návrh E-R databázového schématu Redukce

Více

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

Primární klíč, cizí klíč, referenční integrita, pravidla normalizace, relace Téma 2.2 Primární klíč, cizí klíč, referenční integrita, pravidla normalizace, relace Obecný postup: Každá tabulka databáze by měla obsahovat pole (případně sadu polí), které jednoznačně identifikuje každý

Více

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

Databáze I. Přednáška 3 Databáze I Přednáška 3 Normální formy relací normální formy relací definují určité vlastnosti relací, aby výsledná databáze měla dobré vlastnosti, např. omezena redundance dat snažíme se převést navržené

Více

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

C8 Relační databáze. 1. Datový model C8 Relační databáze návrh návrh 1. Datový model 2. Příklad T2 Datová základna a její využití v práci manažera 2 Cíle cvičen ení C8 Relační databáze návrh 1. Navrhnout myšlenkový datový model jednoduché

Více

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

Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava. Úvod do databázových systémů 2012/2013 IS MHD Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava Úvod do databázových systémů 2012/2013 IS MHD Jiří Znoj, (zno0011) Ostrava, 29. listopadu 2012 I. Obsah I. Obsah...

Více

Databázové systémy. Cvičení 6: SQL

Databázové systémy. Cvičení 6: SQL Databázové systémy Cvičení 6: SQL Co je SQL? SQL = Structured Query Language SQL je standardním (ANSI, ISO) textovým počítačovým jazykem SQL umožňuje jednoduchým způsobem přistupovat k datům v databázi

Více

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

Databázové systémy. Datová integrita + základy relační algebry. 4.přednáška Databázové systémy Datová integrita + základy relační algebry 4.přednáška Datová integrita Datová integrita = popisuje pravidla, pomocí nichž hotový db. systém zajistí, že skutečná fyzická data v něm uložená

Více

4IT218 Databáze. 4IT218 Databáze

4IT218 Databáze. 4IT218 Databáze 4IT218 Databáze Osmá přednáška Dušan Chlapek (katedra informačních technologií, VŠE Praha) 4IT218 Databáze Osmá přednáška Normalizace dat - dokončení Transakce v databázovém zpracování Program přednášek

Více

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

Databáze I. Přednáška 2 Databáze I Přednáška 2 Transformace E-R modelu do relačního modelu (speciality) zaměříme se na dva případy z předmětu Analýza a modelování dat reprezentace entitního podtypu hierarchie ISA reprezentace

Více

Kurz Databáze. Obsah. Návrh databáze E-R model. Datová analýza, tabulky a vazby. Doc. Ing. Radim Farana, CSc.

Kurz Databáze. Obsah. Návrh databáze E-R model. Datová analýza, tabulky a vazby. Doc. Ing. Radim Farana, CSc. Kurz Databáze Datová analýza, tabulky a vazby Doc. Ing. Radim Farana, CSc. Obsah Návrh databáze, E-R model, normalizace. Datové typy, formáty a rozsahy dat. Vytváření tabulek, polí, konvence pojmenování.

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc. 1 Kurz Databáze Zpracování dat Doc. Ing. Radim Farana, CSc. Obsah Druhy dotazů, tvorba dotazu, prostředí QBE (Query by Example). Realizace základních relačních operací selekce, projekce a spojení. Agregace

Více

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

Transformace ER SQL. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 9 Transformace ER SQL Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS ZS 2010/11,

Více

Databázové systémy I

Databázové systémy I Databázové systémy I Přednáška č. 2 Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky jiri.zechmeister@upce.cz Obsah Fáze návrhu databáze Konceptuální model Barkerova notace Unikátní identifikátory

Více

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

Databázové systémy. Vztahy a relace. 3.přednáška Databázové systémy Vztahy a relace 3.přednáška Terminologie - vztahy Účastníci vztahu Stupeň vztahu počet relací účastnících se na vztahu Unární Binární Ternární Terminologie - vztahy Kardinalita vztahu

Více

5. Formalizace návrhu databáze

5. Formalizace návrhu databáze 5. Formalizace návrhu databáze 5.1. Úvod do teorie závislostí... 2 5.1.1. Funkční závislost... 2 5.1.2. Vícehodnotová závislost (multizávislost)... 7 5.1.3. Závislosti na spojení... 9 5.2. Využití teorie

Více

5. Formalizace návrhu databáze

5. Formalizace návrhu databáze 5. Formalizace návrhu databáze 5.1. Úvod do teorie závislostí... 2 5.1.1. Funkční závislost... 2 5.1.2. Vícehodnotová závislost (multizávislost)... 7 5.1.3. Závislosti na spojení... 9 5.2. Využití teorie

Více

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

Databázové a informační systémy Informační systém prodejny nábytku. Jakub Kamrla, KAM087 Databázové a informační systémy Informační systém prodejny nábytku Jakub Kamrla, KAM087 1. část Funkční a nefunkční požadavky 1. K čemu má systém sloužit Jedná se o informační systém pro jednu nejmenovanou

Více

Návrh a tvorba WWW stránek 1/14. PHP a databáze

Návrh a tvorba WWW stránek 1/14. PHP a databáze Návrh a tvorba WWW stránek 1/14 PHP a databáze nejčastěji MySQL součástí balíčků PHP navíc podporuje standard ODBC PHP nemá žádné šablony pro práci s databází princip práce s databází je stále stejný opakované

Více

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D. http://siret.cz/hoksza

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D. http://siret.cz/hoksza Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hksza, Ph.D. http://siret.cz/hksza Osnva Seznámení s SQL Server Management Studiem (SSMS) Základní architektura

Více

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

Relační datový model. Integritní omezení. Normální formy Návrh IS. funkční závislosti multizávislosti inkluzní závislosti Relační datový model Integritní omezení funkční závislosti multizávislosti inkluzní závislosti Normální formy Návrh IS Funkční závislosti funkční závislost elementární redundantní redukovaná částečná pokrytí

Více

Pokročilé typové úlohy a scénáře 2006 UOMO 71

Pokročilé typové úlohy a scénáře 2006 UOMO 71 Pokročilé typové úlohy a scénáře 2006 UOMO 71 Osnova Interní model typové úlohy Vazby include a extend Provázanost typových úloh na firemní procesy a objekty Nejčastější chyby 2006 UOMO 72 Interní model

Více

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

Databázové systémy. Přednáška 1 Databázové systémy Přednáška 1 Vyučující Ing. Martin Šrotýř, Ph.D. K614 Místnost: K311 E-mail: srotyr@fd.cvut.cz Telefon: 2 2435 9532 Konzultační hodiny: Dle domluvy Databázové systémy 14DATS 3. semestr

Více

DBS Konceptuální modelování

DBS Konceptuální modelování DBS Konceptuální modelování Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2012/13 https://edux.fit.cvut.cz/courses/bi-dbs/ Michal

Více

Úvod do databázových systémů. Ing. Jan Šudřich

Úvod do databázových systémů. Ing. Jan Šudřich Ing. Jan Šudřich jan.sudrich@mail.vsfs.cz 1. Cíl předmětu: Úvod do databázových systémů Poskytnutí informací o vývoji databázových systémů Seznámení s nejčastějšími databázovými systémy Vysvětlení používaných

Více

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

Otázka č. 1 (bodů za otázku: 4) Otázka č. 1 (bodů za otázku: 4) Agendy - redundance Která z následujících tvrzení charakterizují redundanci dat v databázi? Je to opakování stejných dat pouze v různých souborech. Je zdrojem nekonzistence

Více

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

Modelový příklad Knihovna Vypracovaný příklad ze cvičení včetně komentářů k řešení 2014-02-28 Modelový příklad Knihovna Vypracovaný příklad ze cvičení včetně komentářů k řešení 2014-02-28 v.1.0 Mějme evidenci klasické knihovny, našim cílem je evidovat informace o výpůjčkách a s tím související

Více

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

RNDr. Jakub Lokoč, Ph.D. RNDr. Michal Kopecký, Ph.D. Katedra softwarového inženýrství Matematicko-Fyzikální fakulta Univerzita Karlova v Praze RNDr. Jakub Lokoč, Ph.D. RNDr. Michal Kopecký, Ph.D. Katedra softwarového inženýrství Matematicko-Fyzikální fakulta Univerzita Karlova v Praze 1 Konceptuální modelování 2 Vytvořte model pro reprezentaci

Více

DATOVÉ MODELOVÁNÍ ER MODEL

DATOVÉ MODELOVÁNÍ ER MODEL DATOVÉ MODELOVÁNÍ ER MODEL Základní pojmy Entita věc reálného světa (objekt) rozlišitelný od jiných objektů. Př) banky s identifikačním číslem 999, účet s č. účtu 100. Entitní množina - množina entit téhož

Více

Databázové systémy a SQL

Databázové systémy a SQL Databázové systémy a SQL Daniel Klimeš Autor, Název akce 1 About me Daniel Klimeš Vzdělání: Obecná biologie PGS: onkologie Specializace: klinické databáze Databáze ORACLE klimes@iba.muni.cz Kotlářská 2,

Více

Databázové systémy BIK-DBS

Databázové systémy BIK-DBS Databázové systémy BIK-DBS Ing. Ivan Halaška katedra softwarového inženýrství ČVUT FIT Thákurova 9, m.č. T9:311 ivan.halaska@fit.cvut.cz Kapitola Relační model dat 1 3. Relační model dat (Codd 1970) Formální

Více

Kapitola 6: Omezení integrity. Omezení domény

Kapitola 6: Omezení integrity. Omezení domény - 6.1 - Omezení domény Referenční integrita Aserce Spouštěče (Triggers) Funkční závislosti Kapitola 6: Omezení integrity Omezení domény Omezení integrity zabraňují poškození databáze; zajišťují, že autorizované

Více

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

Úvod do databázových systémů. Lekce 1 Úvod do databázových systémů Lekce 1 Sylabus Základní pojmy DBS Životní cyklus DB, normalizace dat Modelování DBS, ER diagram Logická úroveň modelu, relační model Relační algebra a relační kalkul Funkční

Více

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

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů Kritéria hodnocení praktické maturitní zkoušky z databázových systémů Otázka č. 1 Datový model 1. Správně navržený ERD model dle zadání max. 40 bodů teoretické znalosti konceptuálního modelování správné

Více

Integritní omezení (IO)

Integritní omezení (IO) Integritní omezení (IO) IO jsou tvrzení vymezující korektnost DB, stupeň souladu datového obrazu s předlohou (jaká data v databází mohou být a jaká již ne). definují se na konceptuální i databázové úrovni

Více

Hierarchický databázový model

Hierarchický databázový model 12. Základy relačních databází Když před desítkami let doktor E. F. Codd zavedl pojem relační databáze, pohlíželo se na tabulky jako na relace, se kterými se daly provádět různé operace. Z matematického

Více

4 ARCHITEKTURA PODNIKOVÝCH PROCESŮ S ARISEM

4 ARCHITEKTURA PODNIKOVÝCH PROCESŮ S ARISEM 41 4 ARCHITEKTURA PODNIKOVÝCH PROCESŮ S ARISEM V této kapitole vysvětlíme potřebu strukturované architektury podnikových procesů, a seznámíme se s běžnými typy modelů, používaných v ARISu k reprezentaci

Více

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

A5M33IZS Informační a znalostní systémy. O čem předmět bude? Úvod do problematiky databázových systémů A5M33IZS Informační a znalostní systémy O čem předmět bude? Úvod do problematiky databázových systémů Co se dozvíte? Návrh datových struktur (modelování relačních dat) Relační modelování úlohy z oblasti

Více

10. blok Logický návrh databáze

10. blok Logický návrh databáze 10. blok Logický návrh databáze Studijní cíl Tento blok je věnován převodu konceptuálního návrhu databáze na návrh logický. Blok se věnuje tvorbě tabulek na základě entit z konceptuálního modelu a dále

Více

2. přednáška. Databázový přístup k datům (SŘBD) Možnost počítání v dekadické aritmetice - potřeba přesných výpočtů, např.

2. přednáška. Databázový přístup k datům (SŘBD) Možnost počítání v dekadické aritmetice - potřeba přesných výpočtů, např. 2 přednáška 2 října 2012 10:32 Souborově orientované uchování dat Slabý HW Není možné uchovávat "velká data" - maximálně řádově jednotky MB Na každou úlohu samostatná aplikace, která má samostatná data

Více

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

Úvod do softwarového inženýrství IUS 2009/2010 p.1/30 Úvod do softwarového inženýrství IUS 2009/2010 5. přednáška Ing. Radek Kočí, Ph.D. Ing. Bohuslav Křena, Ph.D. Vytvořeno na základě přednášky doc. Ing. Jaroslava Zendulky, CSc. Úvod do softwarového inženýrství

Více

Administrace Oracle. Práva a role, audit

Administrace Oracle. Práva a role, audit Administrace Oracle Práva a role, audit Filip Řepka 2010 Práva (privileges) Objekty (tabulky, pohledy, procedury,...) jsou v databázi logicky rozděleny do schémat. Každý uživatel má přiděleno svoje schéma

Více

Diagram výskytů a vztahů

Diagram výskytů a vztahů Diagram výskytů a vztahů Nepoužívá se pro modelování. Pomůcka pro pochopení kardinalit a parcialit. KINO Blaník Vesna Mír Domovina Květen MÁ_NA_PROGRAMU FILM Černí baroni Top gun Kmotr Nováček Vzorec Vetřelec

Více

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

2 Konceptuální modelování a návrh databáze 2 Konceptuální modelování a návrh databáze 2.1. Úloha konceptuálního modelování v procesu návrhu databáze... 2 2.2. E - R modely... 6 2.3. Doporučení pro modelování a tvorbu ER diagramu... 22 2.4. Transformace

Více

Konceptuální modelování

Konceptuální modelování Konceptuální modelování Michal Valenta Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze c Michal Valenta, 2016 BI-DBS, LS 2015/16 https://edux.fit.cvut.cz/courses/bi-dbs/

Více