Téma 9 Databáze úvod, modelování dat

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

Download "Téma 9 Databáze úvod, modelování dat"

Transkript

1 Téma 9 Databáze úvod, modelování dat Obsah 1. Základní pojmy databází 2. Abstrakce, schémata, pohledy 3. Databázové modely 4. Modelování reálného světa 5. Entity a vztahy 6. Entity-elationship (E-) model 7. E- diagramy 8. Převod E- modelu na tabulky dat 9. Normalizace Základní pojmy Často se směšujípojmy databáze Vlastní data zpravidla ve formě tabulek systém řízení báze dat, databázový systém (stroj), DBMS Komplex softwarových komponent pro (pokročilou) práci s daty Základní terminologie databázových systémů Logická struktura dat abstrakce od fyzické organizace uložených dat založeno na vhodném modelu dat pohledy na data (data views) uživatelsky zajímavé dílčí údaje Prostředky pro rychlý přístup k datů klíče indexy organizované s ohledem na rychlost vyhledávání Prostředky pro pohodlné užívání dat sestavynebo formuláře; používají se pro výstup dat (tisk, prezentaci nebo pouhé zobrazení). Sestavy mohou být např. doplněny o filtry, které vyberou jen požadovanézáznamy. Ochranné prostředky uživatelská oprávnění definice přístupu uživatelů k objektům databáze verze: Jaro 2014 Databáze- úvod, modelování dat 1 verze: Jaro 2014 Databáze- úvod, modelování dat 2 Účel databázových systémů Historické databáze vystavěné jako soustava souborů přímo nad OS Nevýhody přímého použití souborů edundance a nekonzistence dat Nejednotné formáty souborů, duplikace informací v různých souborech Izolace dat Problémy s přístupem k datům Pro každou novou úlohu jee nutno napsat nový program Integritní problémy Integritní omezení(např. mzda > 0) je zanořeno někde v programu místo explicitního vyjádření v požadavcích na datový obsah Velmi obtížné aktualizace podmínek (přidání nebo změna) Atomicita operací s daty Havárie mohou nechat databázi v nekonzistentním stavu, když aktualizace proběhne jen částečně Příklad: Převod peněz z jednoho účtu na druhý musí proběhnou buď úplně nebo vůbec ne Souběžný přístup více uživatelů Souběh je nutný z aplikačního hlediska; neřízenépřístupy mohou vést k nekonzistencím Databázové systémy nabízejí řešení verze: Jaro 2014 Databáze- úvod, modelování dat 3 Systém řízení báze dat(sřbd=dbms) Příklad DBMS obsahuje informace o určitém podniku Kolekce vzájemně provázaných dat Množina programů pro přístup a modifikaci dat Prostředí, které je uživatelsky přívětivé a při tom efektivní Aplikace databází Bankovnictví: veškeré transakce Aerolinky: rezervace, letové řády, opravy letadel,... University: registrace, studijní plány, rozvrhy, diplomy,... (KOS) Prodejci: zákazníci, katalogy, jednotlivé obchody Výroba: produkce, sklady, objednávky, zásobování Personalistika: záznamy o zaměstnancích, mzdy, daňové povinnosti,... Databáze jsou všude kolem nás verze: Jaro 2014 Databáze- úvod, modelování dat 4

2 Úrovně abstrakce Fyzická úroveň popisuje, jak je uložen záznam (např. o zákazníkovi) Logická úroveň popisuje jakádata jsou v databázi uložena a vztahy mezi daty type customer = record customer_id: string; customer_name: string; customer_street: string; customer_zip: integer; end; Úroveň pohledů Aplikace zakrývají detaily dat. Pohledy mohou mít týžúčel, tedy např. zakrýt výši mzdy a zaručit tak důvěrnost či utajení některých údajů Pohledy Pohled 1 Pohled 2... Logická úroveň Fyzická úroveň Pohled n Schémata a instance Schéma logickástruktura databáze Analogie s typem (třídou) proměnné v programu Příklad: Databáze obsahuje informace o množiněvyučovaných předmětů, množiněčasových úseků učeben a vztahů mezi nimi (tj. kdy se kde co učí) Fyzické schéma: struktura databáze na fyzické úrovni Logické schéma: struktura databáze na logické úrovni Instance skutečný obsah databáze v daný okamžik Analogie s hodnotou proměnné(stavem objektu) v programu Nezávislost na fyzických datech možnost modifikovat fyzické schéma beze změny logického schématu Aplikace se opírají pouze o logickéschéma a nezávisí na fyzickém zobrazení Obecně: ozhraní mezi různými úrovněmi (vrstvami) a komponentami jsou přesnědefinována, takže změny v některých částech neovlivňují zbytek verze: Jaro 2014 Databáze- úvod, modelování dat 5 verze: Jaro 2014 Databáze- úvod, modelování dat 6 Modely dat Množina prostředků pro popis Vlastních dat Vztahůmezi daty Sémantiky dat Omezení kladených na data Historické modely dat Hierarchický model Síťový model elačnímodel dat v současnosti nejužívanější model Entity-elationshipmodel (E- model) abstraktní a konceptuální znázornění reality formální nástroj pro návrh databáze a jejího logického schématu Objektové modely dat Objektové databáze a Objektově relační databáze Polostrukturované datové modely sloužízpravidla pro výměnu dat mezi různými systémy typický příklad je XML (extensible Mark-up Language) Datově orientované jazyky (1) Jazyky pro manipulaci s daty Data Manipulation Languages (DML) Jazyk pro přístup k datům a manipulaci s daty (modifikaci) organizovanými podle příslušného modelu též dotazovací jazyk (query language) Dvě třídy DML Procedurální uživatel (programátor) udává jaká data chce a jak je získat Deklarativní(neprocedurální) uživatel (programátor) udává jaká data chce, aniž by zadával způsob jejich získání Nejrozšířenější dotazovací jazyk je SQL Structured Query Language deklarativní jazyk Příklad: select st_jmeno, st_prijmeni from studenti where st_login = xnovak verze: Jaro 2014 Databáze- úvod, modelování dat 7 verze: Jaro 2014 Databáze- úvod, modelování dat 8

3 Datově orientované jazyky (2) Jazyky pro definici dat Data Definition Language(DDL) Popis definice databázového schématu Příklad: create table ucet (cislo_uctu: char(10), zustatek: integer) PřekladačDDL generuje množinu tabulek uložených v tzv. slovníkem dat (data dictionary) Slovník dat obsahuje metadata(tj. data o datech znalosti ) Databázové schéma Způsob uloženídat a datové typy Specifikují se struktury datových souborů a způsoby přístupu Integritní omezení Doménová omezení (např. pouze nezáporná čísla) eferenční integrita (odkazy a vazby dat) Tvrzení (assertion) Obecnáomezení ve tvaru predikátůpopisujícípovinné podmínky, které nelze zahrnout do omezeníintegritních (např. katedra musí v každém semestru nabízet aspoň 5 předmětů) Autorizační informace Např. mzda je diskrétní údaj, který mohou vidět jen oprávnění uživatelé (např. šéf a mzdová účetní) verze: Jaro 2014 Databáze- úvod, modelování dat 9 elační model dat Příklad tabelovaných dat v relačním modelu elace je množina ( ) zobrazená výčtovou tabulkou Sloupce se nazývají atributy Špatněnavrženo data se opakují Ukázka relační databáze Tabulka klient Tabulka ucet Tabulka vkladatel uvádí vztah mezi tabulkami klient a ucet verze: Jaro 2014 Databáze - úvod, modelování dat 10 SQL SQL nejrozšířenější neprocedurální dotazovací jazyk Příklad: Najdi jméno zákazníka s klient_id select klient.klient_jmeno from klient where klient.klient_id = Příklad: Najdi zůstatky všech účtů patřících klientovis klient_id select ucet.zustatek from where vkladatel, ucet vkladatel.klient_id = and vkladatel.ucet_id = ucet.ucet_id SQL standard je primárnědml, avšak mái DDLpříkazy Aplikační programy obvykle přistupují k databázím přes rozšíření příslušného programovacího jazyka, kteréumožňuje využívat SQL jako jazykový konstrukt např. propojeníphp s MySQL častépro webovéaplikace API knihoven schopných zaslat SQL příkazy databázovému (sub)systému např. ODBC = Open Database Connectivity či JDBC = Java DataBase Connectivity verze: Jaro 2014 Databáze - úvod, modelování dat 11 Návrh databází Obecný návrh databáze je složitý několikastupňový proces Logický návrh Vytváří se logickéschéma databáze. Cílem je nalézt dobře koncipovanou sadu datových tabulek a jejich vzájemných vazeb tak, aby schéma obsahovalo minimum duplicit a bylo co nejotevřenější pro případné modifikace struktury. Obecně úloha softwarového inženýrství Logický návrh zahrnuje dvě klíčová rozhodnutí: 1. ozhodnutí dle účelu: Jaká data mají být zaznamenávána v databázi 2. ozhodnutí o struktuře: Jak potřebná data rozdělit mezi tabulky dat (relace) a jak koncipovat příslušné databázové schéma. Fyzický návrh ozhodnutí o zobrazenídatových tabulek do samostatných komponent v databázi Důležité z pohledu efektivity a údržby dat verze: Jaro 2014 Databáze- úvod, modelování dat 12

4 Entity-elationship model E- model je jedním z nejčastěji používaných návrhových prostředků Modeluje oblast zájmu (např. podnik) jako kolekci entit and a vztahů (relationships) mezi nimi Entita: je nějaká věc nebo objekt jednoznačně odlišitelná od ostatních Entita je popsána množinou svých atributů Vztah: propojení mezi dvěma či více entitami POZO: Nezaměňovat relace(relation) a vztah(relationship)! eprezentuje se graficky tzv. Entity-elationship diagramem (E- diagram) Objektově relační model a objektový model dat Objektověrelační model rozšiřuje relačnímodel o objektověorientovanékonstrukty Atributy mohou být hlouběji strukturované typy (objekty) včetně např. vnořených relací Zachovává principy relačního pohledu na data a deklarativní přístup k datům za současného rozšíření schopnosti modelování obecnějších dat Poskytuje (aspoňčástečnou) zpětnou kompatibilitu s existujícími relačně orientovanými databázovými jazyky Objektový model je plně objektově orientovaný Poskytuje možnosti klasického objektového náhledu na svět Zapouzdřování, dědění, třídy, vlastnosti, metody,... Při implementaci jsou značným problémem metody, realizované kódem, který by měl být uložen jako součást dat Existující objektovédatabáze poskytují bohatou škálu datových typůvčetněstrukturovaných, jako např. kolekce apod. verze: Jaro 2014 Databáze- úvod, modelování dat 13 verze: Jaro 2014 Databáze- úvod, modelování dat 14 XML: Extensible Markup Language XML původně definován WWW Consortium(W3C) Byl vyvinut jako značkovací(markup) jazyk pro dokumenty, nikoliv jako databázový jazyk Schopnost specifikovat novéznačky (příznaky, tagy) a možnost tvorby vnořovaných značkovaných struktur způsobila, že XLM se dodatečně stala skvělým prostředkem pro výměnu nejen dokumentů, ale zejména dat XML se tak stal základem téměřvšech soudobých systémů pro výměnu dat zejména mezi různými institucemi, např. přenosy účetních dokumentů (faktur) mezi podniky, daňová přiznání apod. Je k dispozici velké množství nástrojů pro analýzu, prohledávání a dotazování dat zachycených v XML formátu Nedávné analýzy však ukazují, že nadměrné rozšíření XML vzhledem ke své objemové náročnosti (XML je velmi ukecaný ) způsobilo dokonce i přetížení komunikačních kanálů počítačových sítí Nastudujte sami např. verze: Jaro 2014 Databáze- úvod, modelování dat 15 E- modelování: Entity Entitaje objekt, který existuje a je odlišitelnáod ostatních objektů Příklad: určitá osoba, podnik, kulturní akce, technické zařízení Entity jsou obecné řeči obvykle vyjádřeny jako podstatná jména Entity mají vlastnosti označované jako atributy Příklad: lidé majíjménaa adresy Množinou entit rozumíme množinou tvořenou entitami stejného typu, tj. entitami s týmiž vlastnostmi Často se místo pojmu množina entit používá entitní typ Příklad: množina osob, množina stromů, množina bankovních půjček, množina údajů sbíraných z čidel klient pujcka verze: Jaro 2014 Databáze- úvod, modelování dat 16

5 E- modelování: Atributy Entita je reprezentována množinou atributůpopisujících vlastnosti všech prvkůpatřících do příslušnémnožiny entit. Fakticky je tím definována struktura datového typu (záznamu), který nese informaci o jednom každém prvku množiny Příklad: klient = (klient_id, klient_jmeno, klient_ulice, klient_mesto) pujcka = (pujcka_id, castka) Doména atributu množina přípustných hodnot pro každý atribut Typy atributů Jednoduché a složené atributy Jedno- nebo vícehodnotové atributy Příklad vícehodnotového atributu: telefonni_cisla Odvozené (též počítané) atributy Dají se vypočítat z hodnot jiných atributů Např. věk, je-li známo datum_narození Složené atributy Složené a složkové atributy Složkové atributy verze: Jaro 2014 Databáze- úvod, modelování dat 17 verze: Jaro 2014 Databáze- úvod, modelování dat 18 E- modelování: Vztahy Vztah definuje propojení mezi dvěma či více entitami Příklad: Novák ukládá na A-102 entita klient vztah vkladatel entita ucet (zobrazeno jako entita) Vztahy obvykle představují slovesné fráze Množina vztahů je množina propojenímezi dvěma (či více) množinami entit matematicky zapsáno: množina vztahůmezi n 2 entitami je množina n-tic, kde každý prvek n-tice je vybrán z jedné množiny entit {(e 1, e 2, e n ) e 1 E 1, e 2 E 2,, e n E n } kde (e 1, e 2,, e n ) je vztah matematicky jde o relaci Příklad: (Novák, A-102) vkladatel klient Množina vztahů Množiny vztahůvyjádřeny tabulkami podobně jako entity Mohou mít dokonce připojené atributy např. datum poslední splátky Množiny vztahůmohou propojovat více množin entit např. (zaměstnanec, pozice, oddělení) většinou se ale používají binární množiny vztahů propojení dvou množin entit pujcka množina vztahů dluzi dluzi verze: Jaro 2014 Databáze - úvod, modelování dat 19 verze: Jaro 2014 Databáze- úvod, modelování dat 20

6 Kardinalita vztahů Kardinalita určuje počet prvků množiny entit přidružené prostřednictvím množiny vztahů Pro binární množiny vztahůjsou možné4 typy 1 : 1 1 : N N : 1 M : N Poznámka: V množinách entit mohou existovat i prvky, kterénejsou propojeny s žádným prvkem v druhé množině. verze: Jaro 2014 Databáze- úvod, modelování dat 21 Klíče Klíčem množiny entitje atribut nebo skupina atributů, jejichž hodnota určuje jednoznačně konkrétní entitu Takových skupin atributů může být více někdy se říká superklíč Minimální superklíče jsou kandidáti na to, aby se stali klíčem Mezi potenciálními kandidáty bude zvolen jeden primární klíč Např. klient_id bude zvolen za primární klíč množiny entit klient Někdy se zavádí samostatný (syntetický) atribut, aby sloužil jako klíč Superklíčemmnožiny vztahůje kombinace (zřetězení) primárních klíčů participujících množin entit též značené jako složkové klíče (klient_id, pujcka_id) je superklíčem vztahu dluzi Pak ovšem nelze mít ve vztahu dluzi více údajůo splátkách půjčky Logickou strukturu pro tato data je nutno navrhnout jinak Volba kandidátů a výběr primárního klíče vztahu závisína kardinalitě vztahu Pro 1:1 může být primárním klíčem kterýkoliv složkový klíč Pro ostatní případy zřetězení složkových klíčů verze: Jaro 2014 Databáze- úvod, modelování dat 22 E- Diagramy E- diagram s vícehodnotovými, složenými a odvozenými atributy klient_jmeno klient_ulice datum klient_id klient_mesto pujcka_id castka klient dluzi pujcka Obdélníky množiny entit Kosočtverce množiny vztahů Ovály atributy zdvojené ovály se užívají pro vícehodnotové atributy čárkované ovály značí odvozené (počítané) atributy Podtržené atributy značí primární klíče verze: Jaro 2014 Databáze- úvod, modelování dat 23 verze: Jaro 2014 Databáze- úvod, modelování dat 24

7 ole Vztahy nemusí propojovat různé množiny entit Pak je vhodné zavést rolea označit tak význam částí vztahu Označení řídí a je_řízen specifikují, jak jsou jednotliví zaměstnanci vzájemně podřízeni přes vztah pracuje_pro ole v E diagramech jsou nepovinné, zlepšují čitelnost a vyjadřují sémantiku Vyjádření kardinality vztahů Značení je nejednotné Základní metoda: Pokud se všechny entity z dané množiny musí účastnit množiny vztahů, znázorňuje se to tlustou nebo dvojitou čarou a nazývá se to omezení účasti ve vztahu(participation constraint). Pokud se každá entita z množiny může účastnit maximálně jednoho vztahu z množiny, je to znázorněno šipkou od množiny entit k množině vztahů, je to nazýváno klíčové omezení (keyconstraint). Ke znázornění vztahu, kdy každá entita z množiny se účastní právějednohovztahu z množiny, se používátlustášipka. verze: Jaro 2014 Databáze- úvod, modelování dat 25 verze: Jaro 2014 Databáze- úvod, modelování dat 26 Kardinalita a omezení- příklady Každý klient máprávě jednu půjčku Alternativní vyjádření omezení kardinalitou vztahů Několik klientů májednu společnou půjčku Jeden klient má několik půjček (nebo také žádnou) Několik klientů participuje na několika půjčkách Klient může mít libovolný počet půjček (nebo také žádnou), avšak každá existující půjčka musí mít svého klienta Alternativně se též používá značení Crow s feet Ke každé půjčce musí existovat aspoň jeden klient avšak ne každý klient musí mít půjčku verze: Jaro 2014 Databáze- úvod, modelování dat 27 verze: Jaro 2014 Databáze- úvod, modelování dat 28

8 Otázky návrhu modelu Entita nebo atribut? Volba závisí na struktuře modelované reality a na sémantice příslušného atributu Často entita místo vícehodnotového nebo složeného atributu Použít množinu entit nebo množinu vztahů? Možným vodítkem je právě význam: vztahy jsou slovesné fráze popisující akce, které se dějí mezi entitami Např. klient ukládá_na účet Binární nebo n-ární množiny vztahů? Kvůli zlepšení čitelnosti jsou často vhodnějšín-ární množiny vztahů, neboť je zřejmé, že více entit participuje na jednom vztahu Z implementačního pohledu jsou binární vztahy efektivnější n-árnívztahy lze převést na sadu binárních Připojovat atributy k množinám vztahů? Připojení jednoduchého atributu k množině vztahůje sice efektivní, může však způsobit komplikace při modifikaci modelu složitější atributy ke vztahům jsou nevhodné verze: Jaro 2014 Databáze- úvod, modelování dat 29 Binární vs. n-ární vztahy Některévztahy vypadající ne-binárně je lépe reprezentovat binárními vztahy Příklad: Ternárnívztah rodičepropojujícídítěs jeho matkou a otcem je vhodnější nahradit dvojicí binárních vztahů je_otcem a je_matkou To dokonce přinese výhodu reprezentace možnosti zakotvenéjižve starořímském právu: Jistá je vždy jen matka Existují ale vztahy, které jsou ze své sémantiky ne-binární Např.: Máme množiny entit: studentske_projekty vedouci_ucitele a studenti a k nim množinu vztahůpracuje_na_a_vede_ho, kterépopisují, který student pracuje na kterém projektu pod vedením kterého učitele. Kdybychom nahradili takovýto ternární vztah binárními vztahy ucitel_projekt a ucitel_student, tak sice zachováme informaci o tom, že učitel Novák vede studenty Karla a Petra a že učitel Novák řídíprojekty A a B, ale nebudeme mít informaci o tom, že Karel řeší projekt A a Petr řeší projekt B verze: Jaro 2014 Databáze- úvod, modelování dat 30 Formální převod n-árních vztahů na binární Ne-binární vztahy lze reprezentovat binárními Zavedeme abstraktní množinu entit E a nahradíme vztahy mezi množinami entit A, B a C množinou entit E a třemi množinami vztahů: 1. A, které propojujíe a A 2. B, propojujíe a B 3. C, propojujíe a C Vytvoříme klíč pro množinu Ea případnéatributy vztahů v přesuneme do E Pro každý jeden vztah (a i, b i, c i ) v vytvoříme 1. novou entitu e i v množiněe 2. přidáme (e i, a i ) do A 3. přidáme (e i, b i ) do B 4. přidáme (e i, c i ) do C Při tomto převodu mohou nastat problémy s omezeními souvisejícími s kardinalitou verze: Jaro 2014 Databáze- úvod, modelování dat 31 Slabé množiny entit Při modelováníreality se někdy vytvářímnožiny entit, kterésamy o soběnemajísmysl Jsou součástí celku daného souvislostí s jinou množinou entit. Takové množiny entit se nazývají slabé (též slabý entitní typ) Existence slabé množiny entit závisí na existenci identifikující množiny entit Musí existovat vztah 1:N vedoucí z identifikující ke slabé množině entit Identifikující vztah se označuje v E- diagramu zdvojeným kosočtvercem Primární klíč slabého entitního typu primární klíč identifikující množiny plus vhodný rozlišujícíatribut slabé množiny (tzv. diskriminátor či rozlišovač ) Slabémnožiny entit se značízdvojeným obdélníkem a jejídiskriminátor se podtrhává čárkovaně Příkladem slabé entity jsou položky faktury, které samy o sobě nemají smysl, pokud nejsou vztaženy ke konkrétní faktuře. Identifikující množinou budou faktury a diskriminátorem číslo položky Jiný příklad verze: Jaro 2014 Databáze- úvod, modelování dat 32

9 Přehled hlavních symbolů E- diagramů E WE slabá množina entit MA vícehodnotový atribut W množina entit množina vztahů idetifikující množina vztahů pro slabou množinu entit verze: Jaro 2014 Databáze- úvod, modelování dat 33 A DA atribut odvozený atribut povinná účast ve vztahu A primární klíč A diskriminátor slabé množiny entit vztah M:N vztah 1:1 1.. K E E vztah N:1 vymezení kardinality vztahu Převod E- modelu na logické schéma Data uložená v tabulkách (relace ) Množina entit Pojmenovaná tabulka Pojmenovanésloupce jsou atributy, každý atribut má svůj datový typ (datum, řetězec znaků dané délky, číslo integer,...) Řádky jednotlivé entity (instance) K prohledávání tabulky slouží primární klíč Množina vztahů Pojmenovaná tabulka Sloupce jsou primárníklíče entitníchtabulek, kteréjsou vztahem propojeny; mohou být přidány další sloupce popisující atributy vztahu Řádky jednotlivé dvojice (nebo n-tice) provázaných entit Primárním klíč závisí na kardinalitě vztahu pro vztah 1:1 stačí jediný atribut, jinak zřetězení primárních klíčů propojených entit Slabá množina entit Opět tabulka se sloupcem obsahujícím primární klíč identifikující entity a sloupcem obsahujícím diskriminátor Zřetězení těchto dvou atributů je primárním klíčem slabého entitního typu verze: Jaro 2014 Databáze- úvod, modelování dat 34 Převod E- modelu na logické schéma (pokr.) Složené atributy Zpravidla se převedou na skupinu jednoduchých atributů (několik sloupců v tabulce) Např. Složený atribut jmeno se složkami prvni_jmeno a prijmeni se převede na dvojici jednoduchychatributůjmeno.prvni_jmeno a jmeno.prijmeni Vícehodnotové atributy Pro takový atribut se vytvoří samostatnátabulka s dvěma sloupci (atributy) První sloupec je primární klíč základní množiny entit a druhý sloupec je konkrétníhodnota zobrazovaného vícehodnotového atributu Tabulka atributu klient.telefon Takto dekomponovanétabulky s atomickými atributy tvoří schéma v tzv. první normální formě Skvělý výklad je na verze: Jaro 2014 Databáze- úvod, modelování dat 35 Normalizace databází Je to teorie umožňujícírigoróznínávrh databáze s ohledem na její korektní aktualizace a užití (Edgar F. Codd 1971) Příklad: Problém: Co zvolit jako klíč? Ani jeden z atributůnení klíčem => klíčemmusí být zřetězení atributů Nevhodně a redundantně se opakují data Druhá normální forma ozklad tak, aby klíče byly jednoduché atributy Avšak i nadále trváproblém: Když se Kovářová vdá, budou se měnit klíče a na ty mohou být navázány další vztahy. Další argumenty viz verze: Jaro 2014 Databáze- úvod, modelování dat 36

10 Funkční závislosti Dalšínormálníformy jsou založeny na tzv. funkčních závislostech: Funkční závislostí rozumíme vazbu (omezení) platnou mezi dvěma množinami atributů v téže "tabulce" (relaci ) v databázi Primitivní příklad: odne_cislo Datum_narozeni (datum narození lze z rodného čísla odvodit). Nikoli však obráceně! Podmínka, z níž lze odvodit závěr, se nazývá determinant závislosti Příklady: Zde lze odvodit následující "funkční" závislosti: Triviální (konkrétní student studuje konkrétní semestr) Netriviální závislosti (méně zjevné): { { Z poslední závislosti vyplývá, že { je superklíčem K čemu je to dobré? verze: Jaro 2014 Databáze- úvod, modelování dat 37 Boyce-Coddova normální forma (BCNF) Definice BCNF: elace je v BCNF právětehdy, když pro každou netriviální závislost X Y, kde X a Y jsou množiny atributů a zároveňy není podmnožinou X, platí, že X je nadmnožinounějakého klíče, nebo X je klíčem relace. Jinak řečeno relace je v BCNF tehdy a jen tehdy, když každý determinant funkčnízávislosti v relaci je zároveňkandidátním klíčem relace. Tabulky (relace) v BCNF umožňují jednoznačně odpovídat na "datové dotazy" ( ) Např.: je v BCNF Dotaz: "Kdo používá učebnici TannenbaumMOS?" je jednoznačně zodpověditelný verze: Jaro 2014 Databáze- úvod, modelování dat 38 BCNF a další normalizace Bohužel tabulky v BCNF trpímnohdy tzv. aktualizačními problémy. Přijde-li nový učitel databází a bude používat tytéž dvě učebnice, bude nutno doplnit dva záznamy. Bude proto vhodné rozložit naši tabulku na dvě: To pak vede na tzv. 4. NF, kde můžeme najít dalšídrobné problémy. Závěr: Teorie normalizace databází je matematicky hluboce propracovaná V učebnicích lze najít devět stupňů normálních forem Zájemci nechť se obrátí ke specializovaných publikacím nebo k předmětům, kterése věnují výhradnědatabázím a jejich teorii Např. A4B33DS, A7B36DBS apod. verze: Jaro 2014 Databáze- úvod, modelování dat 39 Dotazy verze: Jaro 2014 Databáze- úvod, modelování dat 40

Téma 9 Databáze úvod, modelovánídat

Téma 9 Databáze úvod, modelovánídat Téma 9 Databáze úvod, modelovánídat Obsah 1. Základní pojmy databází 2. Abstrakce, schémata, pohledy 3. Databázové modely 4. Modelování reálného světa 5. Entity a vztahy 6. Entity-Relationship (E-R) model

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

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

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

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

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

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

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Databázové systémy Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Vývoj databázových systémů Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace 60.-70. léta Program Komunikace Výpočty

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

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

Analýza a modelování dat 3. přednáška. Helena Palovská Analýza a modelování dat 3. přednáška Helena Palovská Historie databázových modelů Relační model dat Codd, E.F. (1970). "A Relational Model of Data for Large Shared Data Banks". Communications of the ACM

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

Datové modelování II

Datové modelování II Datové modelování II Atributy Převod DM do schématu SŘBD Dotazovací jazyk SQL Multidimenzionální modelování Principy Doc. Miniberger, BIVŠ Atributy Atributem entity budeme rozumět název záznamu či informace,

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

Kapitola 7: Návrh relačních databází. Nástrahy relačního návrhu. Příklad. Rozklad (dekompozice)

Kapitola 7: Návrh relačních databází. Nástrahy relačního návrhu. Příklad. Rozklad (dekompozice) - 7.1 - Kapitola 7: Návrh relačních databází Nástrahy návrhu relačních databází Dekompozice (rozklad) Normalizace použitím funkčních závislostí Nástrahy relačního návrhu Návrh relačních databází vyžaduje

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

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

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

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ázové systémy úvod

Databázové systémy úvod Databázové systémy úvod 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

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

TEORIE ZPRACOVÁNÍ DAT

TEORIE ZPRACOVÁNÍ DAT Vysoká škola báňská - Technická univerzita Ostrava Fakulta elektrotechniky a informatiky TEORIE ZPRACOVÁNÍ DAT pro kombinované a distanční studium Jana Šarmanová Ostrava 2003 Jana Šarmanová, 2003 Fakulta

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

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

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

Jiří Mašek BIVŠ V Pra r ha 20 2 08 Jiří Mašek BIVŠ Praha 2008 Procesvývoje IS Unifiedprocess(UP) Iterace vývoje Rysy CASE nástrojů Podpora metodických přístupů modelování Integrační mechanismy propojení modelů Podpora etap vývoje Generování

Více

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

Analýza a modelování dat. Helena Palovská Analýza a modelování dat Helena Palovská Analýza a modelování pro SW projekt Strukturovaný přístup Dynamická část (procesy, aktivity, funkce) Statická část (data) Objektově orientovaný přístup use case

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

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

Základy databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19

Základy databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19 3 Obsah Novinky v tomto vydání 10 Význam základních principů 11 Výuka principů nezávisle na databázových produktech 12 Klíčové pojmy, kontrolní otázky, cvičení, případové studie a projekty 12 Software,

Více

DATABÁZOVÉ SYSTÉMY. Metodický list č. 1

DATABÁZOVÉ SYSTÉMY. Metodický list č. 1 Metodický list č. 1 Cíl: Cílem předmětu je získat přehled o možnostech a principech databázového zpracování, získat v tomto směru znalosti potřebné pro informačního manažera. Databázové systémy, databázové

Více

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

Objektově relační databáze a ORACLE 8 Objektově relační databáze a ORACLE 8 Ludmila Kalužová VŠB - TU Ostrava, Ekonomická fakulta, Katedra informatiky v ekonomice, Sokolská 33, 701 21 Ostrava 1 Abstrakt V současné době existuje velký počet

Více

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Maturitní otázky z předmětu PROGRAMOVÁNÍ Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti

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

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

Více

předměty: ukončení: Zápočet + Zkouška / 5kb např. jméno, název, destinace, město např. student Jan Novák, narozen 18.5.1974

předměty: ukončení: Zápočet + Zkouška / 5kb např. jméno, název, destinace, město např. student Jan Novák, narozen 18.5.1974 základní informace Databázové systémy Úvodní přednáška předměty: KI/DSY (B1801 Informatika - dvouoborová) KI/P502 (B1802 Aplikovaná informatika) ukončení: Zápočet + Zkouška / 5kb ki.ujep.cz termínovník,

Více

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

Analýza a modelování dat 2. přednáška. Helena Palovská Analýza a modelování dat 2. přednáška Helena Palovská Databázové modely Způsoby logické organizace dat hierarchický síťový relační objektový (objektově-relační) multidimenzionální Historie databázových

Více

POKROČILÉ POUŽITÍ DATABÁZÍ

POKROČILÉ POUŽITÍ DATABÁZÍ POKROČILÉ POUŽITÍ DATABÁZÍ Barbora Tesařová Cíle kurzu Po ukončení tohoto kurzu budete schopni pochopit podstatu koncepce databází, navrhnout relační databázi s využitím pokročilých metod, navrhovat a

Více

7.3 Diagramy tříd - základy

7.3 Diagramy tříd - základy 7.3 Diagramy tříd - základy - popisuje typy objektů a statické vztahy mezi nimi Objednávka -datumpřijetí -předplacena -číslo -cena +vyřiď() +uzavři() {if Objednávka.zákazník.charakteristika = 'nejistý'

Více

Databázové a informační systémy Jana Šarmanová

Databázové a informační systémy Jana Šarmanová Databázové a informační systémy Jana Šarmanová Obsah Úloha evidence údajů, způsoby evidování Databázové technologie datové modely, dotazovací jazyky. Informační systémy Datové sklady Metody analýzy dat

Více

7.3 Diagramy tříd - základy

7.3 Diagramy tříd - základy 7.3 Diagramy tříd - základy - popisuje typy objektů a statické vztahy mezi nimi Objednávka -datumpřijetí -předplacena -číslo -cena +vyřiď() +uzavři() {if Objednávka.zákazník.charakteristika = 'nejistý'

Více

37. Indexování a optimalizace dotazů v relačních databázích, datové struktury, jejich výhody a nevýhody

37. Indexování a optimalizace dotazů v relačních databázích, datové struktury, jejich výhody a nevýhody 37. Indexování a optimalizace dotazů v relačních databázích, datové struktury, jejich výhody a nevýhody Využití databázových indexů Databázové indexy slouží ke zrychlení přístupu k datům a měly by se používat

Více

Database engine (databázový stroj, databázový motor, databázové jádro) Systém řízení báze dat SŘBD. Typy SŘBD podle způsobu práce s daty

Database engine (databázový stroj, databázový motor, databázové jádro) Systém řízení báze dat SŘBD. Typy SŘBD podle způsobu práce s daty Systém řízení báze dat SŘBD programový systém umožňující vytvoření, údržbu a použití báze dat databáze program Database engine (databázový stroj, databázový motor, databázové jádro) funkce: přenos (načítání)

Více

Použití databází na Webu

Použití databází na Webu 4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2010/11/18 11:33:52 $ Obsah Co nás čeká... 3 Architektura webových databázových aplikací... 4 K čemu se používají databázové

Více

Ukládání a vyhledávání XML dat

Ukládání a vyhledávání XML dat XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2014/12/04 19:41:24 $ Obsah Ukládání XML dokumentů... 3 Ukládání XML do souborů... 4 Nativní XML databáze... 5 Ukládání

Více

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev Úvod do databází Modelování v řízení Ing. Petr Kalčev Co je databáze? Množina záznamů a souborů, které jsou organizovány za určitým účelem. Jaké má mít přínosy? Rychlost Spolehlivost Přesnost Bezpečnost

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

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

Marketingová komunikace. 1. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3aph) 1. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Co nás čeká I. Úvod do teorie DB systémů

Více

Databáze II. 1. přednáška. Helena Palovská palovska@vse.cz

Databáze II. 1. přednáška. Helena Palovská palovska@vse.cz Databáze II 1. přednáška Helena Palovská palovska@vse.cz Program přednášky Úvod Třívrstvá architektura a O-R mapování Zabezpečení dat Role a přístupová práva Úvod Co je databáze Mnoho dat Organizovaných

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

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

Ú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í 7 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Modelování databází Modelování

Více

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

Databázové systémy. Tomáš Skopal. - úvod do relačního modelu. - převod konceptuálního schématu do relačního Databázové systémy - úvod do relačního modelu Tomáš Skopal - převod konceptuálního schématu do relačního Osnova přednášky relační model převod ER diagramu do relačního modelu tvorba univerzálního relačního

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

Databáze Bc. Veronika Tomsová

Databáze Bc. Veronika Tomsová Databáze Bc. Veronika Tomsová Databázové schéma Mapování konceptuálního modelu do (relačního) databázového schématu. 2/21 Fyzické ik schéma databáze Určuje č jakým způsobem ů jsou data v databázi ukládána

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

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Šablona 32 VY_32_INOVACE_038.ICT.34 Tvorba webových stránek SQL stručné minimum OA a JŠ Jihlava, VY_32_INOVACE_038.ICT.34 Číslo

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

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

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

MBI - technologická realizace modelu

MBI - technologická realizace modelu MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,

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.. Ú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

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

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata Databáze Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu Bedřich Košata K čemu jsou databáze Ukládání dat ve strukturované podobě Možnost ukládat velké množství dat

Více

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

J. Zendulka: Databázové systémy 4 Relační model dat 1 4. Relační model dat 4.1. Relační struktura dat... 3 4.2. Integritní pravidla v relačním modelu... 9 4.2.1. Primární klíč... 9 4.2.2. Cizí klíč... 11 4.2.3. Relační schéma databáze... 13 4.3. Relační algebra...

Více

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

Marketingová komunikace. 1. a 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3bph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3bph) 1. a 2. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Co nás čeká I. Úvod do teorie DB systémů

Více

Metodika návrhu databáze

Metodika návrhu databáze Metodika návrhu databáze Metodika tvorby konceptuálního datového modelu (ERA diagramu) 1 1. Zvolte jednu primární entitu ze specifikace požadavků. 2. Určete atributy, jejichž hodnoty se mají pro tuto entitu

Více

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

4. Základy relačních databází, logická úroveň návrhu 4. Základy relačních databází, logická úroveň návrhu 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.

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

Kapitola 3: Relační model. Základní struktura. Relační schéma. Instance relace

Kapitola 3: Relační model. Základní struktura. Relační schéma. Instance relace - 3.1 - Struktura relačních databází Relační algebra n-ticový relační kalkul Doménový relační kalkul Rozšířené operace relační algebry Modifikace databáze Pohledy Kapitola 3: Relační model Základní struktura

Více

Databáze v MS ACCESS

Databáze v MS ACCESS 1 z 14 19.1.2014 18:43 Databáze v MS ACCESS Úvod do databází, návrh databáze, formuláře, dotazy, relace 1. Pojem databáze Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele,

Více

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Databáze MS-Access Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Obsah Principy a možnosti databází. Uložení dat v databázi, formáty dat, pole, záznamy, tabulky, vazby mezi záznamy. Objekty databáze

Více

2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování

2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování 1. Teoretické základy modelování na počítačích 1.1 Lambda-kalkul 1.1.1 Formální zápis, beta-redukce, alfa-konverze 1.1.2 Lambda-výraz jako data 1.1.3 Příklad alfa-konverze 1.1.4 Eta-redukce 1.2 Základy

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

Stručný obsah. K2118.indd 3 19.6.2013 9:15:27

Stručný obsah. K2118.indd 3 19.6.2013 9:15:27 Stručný obsah 1. Stručný obsah 3 2. Úvod 11 3. Seznamy a databáze v Excelu 13 4. Excel a externí data 45 5. Vytvoření kontingenční tabulky 65 6. Využití kontingenčních tabulek 81 7. Kontingenční grafy

Více

Univerzita Pardubice Fakulta ekonomicko-správní Ústav systémového inženýrství a informatiky Návrh a tvorba databáze v prostředí vybrané firmy

Univerzita Pardubice Fakulta ekonomicko-správní Ústav systémového inženýrství a informatiky Návrh a tvorba databáze v prostředí vybrané firmy Univerzita Pardubice Fakulta ekonomicko-správní Ústav systémového inženýrství a informatiky Návrh a tvorba databáze v prostředí vybrané firmy Pavla Vaníčková Bakalářská práce 2012 Prohlášení Prohlašuji,

Více

Datové typy a struktury

Datové typy a struktury atové typy a struktury Jednoduché datové typy oolean = logická hodnota (true / false) K uložení stačí 1 bit často celé slovo (1 byte) haracter = znak Pro 8-bitový SII kód stačí 1 byte (256 možností) Pro

Více

Access. Tabulky. Vytvoření tabulky

Access. Tabulky. Vytvoření tabulky Access správa databáze (tabulky, relace, omezující podmínky, data...) uživatelské prostředí pro práci s databází (formuláře, sestavy, datové stránky, makra...) ukázková aplikace Northwind hlavní okno databáze

Více

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka Metody tvorby ontologií a sémantický web Martin Malčík, Rostislav Miarka Obsah Reprezentace znalostí Ontologie a sémantický web Tvorba ontologií Hierarchie znalostí (D.R.Tobin) Data jakékoliv znakové řetězce

Více

VÝVOJ APLIKACÍ S VYUŽITÍM NATIVNÍHO DATABÁZOVÉHO SYSTÉMU VEMA

VÝVOJ APLIKACÍ S VYUŽITÍM NATIVNÍHO DATABÁZOVÉHO SYSTÉMU VEMA VÝVOJ APLIKACÍ S VYUŽITÍM NATIVNÍHO DATABÁZOVÉHO SYSTÉMU VEMA Ing. Bc. Jaroslav Šmarda Vema, a. s. smarda@vema.cz Abstrakt Společnost Vema, a. s., která patří již 15 let mezi přední dodavatele aplikací

Více

Databázové systémy. modelování. Tomáš Skopal. - úvod. - konceptuální datové

Databázové systémy. modelování. Tomáš Skopal. - úvod. - konceptuální datové Databázové systémy - úvod Tomáš Skopal - konceptuální datové modelování Osnova organizační záležitosti přehled kurzu konceptuální datové modelování Organizační záležitosti Povinnosti zápočet = složit zápočtový

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

7.5 Diagram tříd pokročilé techniky

7.5 Diagram tříd pokročilé techniky 7.5 Diagram tříd pokročilé techniky Stereotypy - jeden ze základních prostředků rozšiřitelnosti UML - pro modelovací konstrukce neexistující v UML, ale podobné předdefinované v UML definované uživatelem

Více

Profilová část maturitní zkoušky 2013/2014

Profilová část maturitní zkoušky 2013/2014 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2013/2014 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA

Více

UML. Unified Modeling Language. Součásti UML

UML. Unified Modeling Language. Součásti UML UML Unified Modeling Language 1995 počátek 1997 verze 1.0 leden dnes verze 2.0 (vývoj stále nedokončen) Standardní notace OMG podpora velkých firem (Microsoft, IBM, Oracle, HP ) popisuje struktury popisuje

Více

Dolování v objektových datech. Ivana Rudolfová

Dolování v objektových datech. Ivana Rudolfová Dolování v objektových datech Ivana Rudolfová Relační databáze - nevýhody První normální forma neumožňuje vyjádřit vztahy A je podtypem B nebo vytvořit struktury typu pole nebo množiny SQL omezení omezený

Více

Střední odborná škola stavební Karlovy Vary Sabinovo náměstí 16, 360 09 Karlovy Vary Autor: Ing. Hana Šmídová Název materiálu:

Střední odborná škola stavební Karlovy Vary Sabinovo náměstí 16, 360 09 Karlovy Vary Autor: Ing. Hana Šmídová Název materiálu: Název školy: Střední odborná škola stavební Karlovy Vary Sabinovo náměstí 16, 360 09 Karlovy Vary Autor: Ing. Hana Šmídová Název materiálu: VY_32_INOVACE_01_ACCESS_P2 Číslo projektu: CZ 1.07/1.5.00/34.1077

Více

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

Marketingová komunikace. 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3bph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3bph) 3. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Zdroje Studijní materiály Heleny Palovské

Více

Maturitní témata Školní rok: 2015/2016

Maturitní témata Školní rok: 2015/2016 Maturitní témata Školní rok: 2015/2016 Ředitel školy: Předmětová komise: Předseda předmětové komise: Předmět: PhDr. Karel Goš Informatika a výpočetní technika Mgr. Ivan Studnička Informatika a výpočetní

Více

Unifikovaný modelovací jazyk UML

Unifikovaný modelovací jazyk UML Unifikovaný modelovací jazyk UML Karel Richta katedra počíta tačů FEL ČVUT Praha richta@fel fel.cvut.czcz Motto: Komunikačním m prostředkem informační komunity se postupem času stala angličtina. Chcete-li

Více

1. Dědičnost a polymorfismus

1. Dědičnost a polymorfismus 1. Dědičnost a polymorfismus Cíl látky Cílem této kapitoly je představit klíčové pojmy dědičnosti a polymorfismu. Předtím však je nutné se seznámit se základními pojmy zobecnění neboli generalizace. Komentář

Více

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií VY_32_INOVACE_33_02 Š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

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda 1. Lze vždy z tzv. instanční třídy vytvořit objekt? 2. Co je nejčastější příčinou vzniku chyb? A. Specifikace B. Testování C. Návrh D. Analýza E. Kódování 3. Je defenzivní programování technikou skrývání

Více

Operátory ROLLUP a CUBE

Operátory ROLLUP a CUBE Operátory ROLLUP a CUBE Dotazovací jazyky, 2009 Marek Polák Martin Chytil Osnova přednášky o Analýza dat o Agregační funkce o GROUP BY a jeho problémy o Speciální hodnotový typ ALL o Operátor CUBE o Operátor

Více

Úvod do MS Access. Modelování v řízení. Ing. Petr Kalčev

Úvod do MS Access. Modelování v řízení. Ing. Petr Kalčev Úvod do MS Access Modelování v řízení Ing. Petr Kalčev Postup při tvorbě aplikace Vytvoření tabulek Vytvoření relací Vytvoření dotazů Vytvoření formulářů Vytvoření sestav Tabulky Slouží k definování polí,

Více

ANOTACE vytvořených/inovovaných materiálů

ANOTACE vytvořených/inovovaných materiálů ANOTACE vytvořených/inovovaných materiálů Číslo projektu Číslo a název šablony klíčové aktivity Tematická oblast Formát Druh učebního materiálu Druh interaktivity CZ.1.07/1.5.00/34.0722 III/2 Inovace a

Více

DATABÁZOVÉ SYSTÉMY JIŘÍ HRONEK. 1.1 Úvod do databázové technologie KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO

DATABÁZOVÉ SYSTÉMY JIŘÍ HRONEK. 1.1 Úvod do databázové technologie KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO DATABÁZOVÉ SYSTÉMY JIŘÍ HRONEK Studium databázových systémů (DBS) můžeme členit do tří širokých oblastí podle úhlu uživatelského nebo vývojářského

Více

Ukázka knihy z internetového knihkupectví www.kosmas.cz

Ukázka knihy z internetového knihkupectví www.kosmas.cz Ukázka knihy z internetového knihkupectví www.kosmas.cz U k á z k a k n i h y z i n t e r n e t o v é h o k n i h k u p e c t v í w w w. k o s m a s. c z, U I D : K O S 1 8 1 1 4 5 Oracle průvodce správou,

Více

Principy UML. Clear View Training 2005 v2.2 1

Principy UML. Clear View Training 2005 v2.2 1 Principy UML Clear View Training 2005 v2.2 1 1.2 Co je touml? Unified Modelling Language (UML) je univerzálníjazyk pro vizuální modelování systémů Podporuje všechny životní cykly Mohou jej implementovat

Více