11. blok Normalizace. Studijní cíl

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

Download "11. blok Normalizace. Studijní cíl"

Transkript

1 11. blok Normalizace Studijní cíl Využití normalizace při návrhu databáze. Vliv nenormalizovaných tabulek na vznik anomálií a nekonzistence v databázi. Pravidla spojená s nejužívanějšími normálními formami (1NF,2NF,3NF). Odstraňovaní chyb a redundancí z tabulek, které nesplňují normální formy. Doba nutná k nastudování 2-3 hodiny Průvodce studiem Při studiu tohoto bloku se předpokládá, že čtenář je obeznámen se základními pojmy z databázového modelování, jako jsou entity, atributy, relace atd. 1 Úvod do normalizace Tento studijní blok se snaží poukázat na důležitost normalizace při návrhu databáze. Zároveň se snaží pohlížet na normalizaci jako užitečnou techniku při kontrole struktury tabulek odvozených z ER modelu. Prakticky se dá normalizace využít pomocí dvou přístupů. Jednak se dá využít přístupem zdola nahoru (bottom-up), jednak se dá využít přístupu shora dolů (top-down). Při normalizaci za využití přístupu zdola nahoru se studují souvislosti mezi jednotlivými atributy a na základě analýzy těchto souvislostí jsou jednotlivé atributy seskupeny do tabulek, které reprezentují výsledné entity a relace. V případě velkého množství atributů je velmi obtížné tento přístup použít, protože je pak obtížné zavést všechny vztahy mezi atributy. Při normalizaci za požití přístupu shora dolů se využívá ER modelování, v rámci kterého se namodelují základní entity, atributy a relace. ER model je následně převeden na tabulky a tabulky následně projdou normalizací. Předně je dobré zdůraznit, že technika normalizace byla vyvinuta v roce 1972 E. F. Coddem pro podporu návrhu databází založených na relačním modelu. Technická definice normalizace říká: Normalizace je technika používaná pro vytvoření sady tabulek s minimální redundancí, která podporuje datové požadavky organizace. 1

2 Jiné definice hovoří o normalizaci jako o sadě testů prováděných na jednotlivých tabulkách, aby se zjistilo, zda jsou dodržena pravidla pro tzv. normální formy. Normálních forem existuje celá řada, ale mezi ty nejužívanější normální formy paří první normální forma (1NF), druhá normální forma (2NF) a třetí normální forma (3NF). Společným rysem všech tři normálních forem je jejich založení na vztazích mezi sloupci v tabulce. V následující části dokumentu budou jednotlivé normální formy vysvětleny. Dále budou popsány příklady chybně navržených tabulek spolu s ukázkami, jak tento chybný návrh může způsobit následnou redundanci dat spolu s anomáliemi vznikajícími při aktualizaci. 2 Redundance dat a anomálie aktualizace Jedním z cílů, ke kterému by měl každý návrh databáze směřovat, je omezení (nebo úplná eliminace) redundance dat. Je tedy nutné jednotlivé atributy seskupit/rozdělit do tabulek, tak aby prostor pro uložení navržených tabulek byl co nejmenší. Pro ilustraci jsou zvoleny tabulky Studenti a Fakulty. cislostudenta jmeno cislofakulty st12456 Jan Novák novak@up.cz f1 st14527 Tomáš Nový novy@up.cz f2 st18621 Petr Jakš jaks@up.cz f2 st11821 Jan Houser houser@up.cz f1 st12333 Josef Levý levy@up.cz f3 1 Tabulka Studenti cislofakulty nazev adresa f1 Elektrotechnika Jungmanova 475, Praha 1, f2 Ekonomická Fugnerova 487, Praha 2, f3 Humanitní Národní Třída 15, Praha 1, Tabulka Fakulty cislostudenta jmeno cisfak nazev adresa st12456 Jan Novák novak@up.cz f1 Elektrotechnik a Jungmanova 475, Praha 1, st14527 Tomáš Nový novy@up.cz f2 Ekonomická Fügnerova 487, Praha 2, st18621 Petr Jakš jaks@up.cz f2 Ekonomická Fügnerova 487, Praha 2, Jungmanova 475, Praha 1, st11821 Jan Houser houser@up.cz f1 Elektrotechnik a st12333 Josef Levý levy@up.cz f3 Humanitní Národní Třída 15, Praha 1, Tabulka StudentiFakulty 2

3 Tabulka StudentiFakulty je alternativní reprezentací tabulek Studenti a Fakulty. Tabulka StudentiFakulty již na první pohled obsahuje redundantní data. Údaje o fakultě (název, adresa) se opakují pro každého studenta znovu a znovu. V tabulce student se opakovalo jen číslo dané fakulty jako údaj o tom, kde daný student studuje. Ovšem to, že se data v tabulce opakují, není jediný problém spojený s redundancí dat. Spolu s redundantními daty jsou potenciálně spojeny následující anomálie. Anomálie vkládání, anomálie vymazání a anomálie modifikace. Anomálie vkládání Pokud bude vložen do tabulky StudentiFakulty nový záznam o studentovi studujícím na určité fakultě, musí údaje o fakultě u nového studenta přesně souhlasit s údaji o fakultě u ostatních studentů, kteří studují stejnou fakultu. Zde hrozí, že pokud uvedeme u stejné fakulty různé adresy, pak v tabulce budou existovat pro stejnou fakultu různé adresy a nebude možné identifikovat, která adresa je ta správná. Tabulka Studenti tímto neduhem netrpí, jelikož všichni studenti stejné fakulty odkazují na jeden záznam a tím tudíž i na jednu adresu. Navíc se v tomto případě uchovávat daný záznam o fakultě jen jednou, což v případě mnoha záznamů v tabulce Student, může znamenat značnou úsporu diskového prostoru. Druhý problém spojený se vkládáním do tabulky podobné StudentiFakulty nastává ve chvíli, kdy je nutné vytvořit novou fakultu, která ale ještě nemá žádné studenty. V tomto případě by se to rovnalo vyplnění sloupců týkajících se jen fakulty a informace o studentovi vyplnit hodnotou NULL. Ale co když je jeden ze sloupců týkajících se studenta definován jako povinný (NOT NULL)? V tomto případě by se tedy jednalo o porušení integrity a daná operace by byla zamítnuta. První dvojice tabulek tímto netrpí. Nová fakulta bude vytvořena vložením příslušného záznamu do tabulky fakulta. Samotné studenty fakulty je možné zadat až později. Anomálie vymazání V situaci, kdy by byl vymazán záznam z tabulky StudentiFakulty obsahující posledního studenta fakulty, nenávratně by byla smazána z databáze i příslušná fakulta. V dané tabulce by záznam o fakultě přestal existovat. Například smazaní studenta Josef Levý by způsobilo zároveň i smazaní humanitní fakulty, neboť už se u jiného studenta v tabulce nevyskytuje. První dvojce tabulek opět tento problém nemá. Pokud z tabulky Student smažeme studenta Josef Levý, tak fakulta pouze přijde o posledního studenta, ale jinak informace o fakultě stále zůstanou v tabulce Fakulty. 3

4 Anomálie modifikace V případě, že mají byt změněny hodnoty jednoho ze sloupců s údaji o fakultě, například může být měněna adresa fakulty, musí být modifikace provedena na všech záznamech tabulky, jež se týkají dané fakulty. Vynechání aktualizace byť jednoho záznamu způsobí, že data v databázi budou nekonzistentní. U tabulky Fakulty toto nehrozí, jelikož je vždy aktualizován jen jeden záznam. Jak je z uvedených příkladů patrné, rozložení entity na dvě (i více) tabulky je velmi výhodné. Nejen že se tím odstraní problém s redundancí dat, ale zároveň nehrozí žádná ze zmíněných anomálií. Nyní budou probrány jednotlivé normální formy spolu s jejich využitím pro vytvoření tabulek s požadovanými vlastnostmi, které netrpí problémy způsobenými výše uvedenými anomáliemi. 3 První normální forma (1NF) Definice první normální formy říká: Tabulka je v první normální formě, jestliže lze do každého pole dosadit pouze jednoduchý datový typ (jsou dále nedělitelné). Alternativní definice o první normální formě říká, že průsečík sloupce a záznamu (řádku) obsahuje vždy jen jednu hodnotu. Dodržení první normální formy je kritické pro definování vhodných tabulek relační databáze. Dodržení této formy je prakticky povinné. Ostatní normy se dají považovat za volitelné, i když, aby se předešlo výše uvedeným anomáliím, doporučuje se používat minimálně třetí normální formu. cisfak nazev adresa telefon f1 Elektrotechnika Jungmanova 475, Praha 1, , , f2 Ekonomická Fügnerova 487, Praha , , f3 Humanitní Národní Třída 15, Praha 1, Tabulka Fakulty (nesplňující 1NF) Tabulka Fakulty není v první normální formě, protože její sloupec telefon nevyhovuje definici 1NF. Je to způsobeno tím, že Elektrotechnická a Ekonomická fakulta obsahují ve sloupci telefon dvě telefonní čísla, což je v přímém rozporu s 1NF. Svým způsobem může být pozornost zaměřena i na sloupec adresa. Může být o něm prohlášeno, že obsahuje více hodnot. Nejedná se však o stejnou vadu jako u sloupce telefon, kde se opakovalo více telefonních čísel. Zde se vždy jedná jen o jednu adresu, avšak která se skládá s více hodnot. Jedná se tedy o složený atribut, který by bylo vhodné rozdělit na jednoduché atributy. 4

5 Pokud bychom ovšem pod atributem adresa chtěli vidět (kdykoli v budoucnu pracovat s těmito dílčími atributy) ulici, číslo popisné, PSČ a město, pak bychom to takto prohlásit nemohli, jednalo by se o složený atribut a bylo by vhodné jej rozdělit do několika samostatných sloupců. Rozdělení do několika samostatných sloupců by navíc mohlo přinést i výhodu spočívající v přesnější definici domén jednotlivých atomických sloupců, která může zajistit i vyšší integritu dat. Alternativním řešením by bylo použití jasně definované a bezpečné struktury atributu adresa, která by takové přesné rozdělení umožnila nebo použití strukturovaného datového typu (např. typu OBJECT), což však překračuje hranice tohoto kurzu. Aby tabulka splňovala 1NF, musí dojít k přesunutí sloupce telefon, spolu s kopií primárního klíče tabulky Fakulta, do nové tabulky nazvané například FakultyTelefoy. Po normalizaci tedy zůstanou dvě tabulky: cisfak nazev adresa f1 Elektrotechnika Jungmanova 475, Praha 1, f2 Ekonomická Fügnerova 487, Praha 2, f3 Humanitní Národní Třída 15, Praha 1, Tabulka Fakulty (splňující 1NF) řešení s ponecháním sloupce adresa 4 Druhá normální forma (2NF) cisfak telefon f f f f f f Tabulka FakultyTelefony Definice druhé normální formy říká: Tabulka je ve druhé normální formě, pokud je v první normální formě a zároveň, jsou hodnoty každého sloupce, který není součástí primárního klíče, determinovány všemi hodnotami sloupců, které tvoří primární klíč. Druhá normální forma se tak tedy týká jen tabulek, které obsahují složený primární klíč (primární klíč tvoří dva a více sloupců). Z toho vyplývá, že tabulka, která je v 1NF a zároveň její primární klíč je tvořen pouze jediným sloupcem, je automaticky také v 2NF. Pokud se tabulka nenachází v 2NF, hrozí jí anomálie spojená s aktualizací. S pojmem determinovat uvedeným v definici druhé normální formy úzce souvisí pojem funkční závislost. Funkční závislost popisuje vztah mezi sloupci v tabulce 5

6 a indikuje to, že tyto sloupce spolu souvisí. Pokud by existovala tabulka se sloupci a a b, kde by sloupec a determinoval sloupec b, tak by tento vztah byl označen jako a -> b. Z tohoto vztahu vyplývá, že pokud známe hodnotu a, najdeme k ní vždy jen jednu hodnotu b. Opačně tento vztah nefunguje, jelikož pro jednu hodnotu b může existovat několik hodnot a. Uvažujme následující tabulku, která druhou normální formu nesplňuje: cislostudent kodpredmet jmeno Známka datum st12124 IDAS2 Jan Nový novy@up.cz st12124 IMAT Jan Nový novy@up.cz st14754 IDAS2 Petr Levý levy@up.cz st14754 INPIN Petr Levý levy@up.cz Tabulka StudentiZkousky Nechť tabulka StudentZkouska slouží pro zapisování výsledů zkoušek jednotlivým studentům. Tabulka obsahuje složený primární klíč, tvořený sloupci cislostudent a kodpredmet, který jednoznačně identifikuje studenta, kterému byl výsledek zapsán a zároveň identifikuje předmět, ve kterém tohoto výsledku daný student dosáhl. Při bližším pohledu na tabulku je zřejmé, že tabulka je v 1NF. Žádný její sloupec neobsahuje více hodnot. Ve druhé normální formě však tato tabulka už není. Příčinu toho, proč tato tabulka není ve 2NF, pomůže odhalit termín funkční závislosti. Každý sloupec v tabulce, který není součástí primárního klíče, je zkoumán pomocí funkční závislosti na celém primárním klíči. Tabulka pak není ve 2NF, pokud se při testování zjistí, že alespoň jeden sloupec tabulky je pouze částečně závislý na primárním klíči. Tento jev se nazývá částečná závislost. Pokud je test funkční závislosti aplikován na tabulku StudentZkouska, tak je zřejmé, že sloupce známka a datum jsou funkčně závislé (jsou determinovány) na obou sloupcích primárního klíče (cislostudent,kodpredmet), jelikož konkrétní výsledek zkoušky (známka a datum zápisu známky) se vždy zapisují pro konkrétního studenta a konkrétní předmět. Pokud se ale test funkční závislosti provede na sloupce jmeno a , je zjištěno, že tyto sloupce jsou závislé pouze na sloupci cislostudent, tudíž se jedná jen o částečnou závislost a proto tabulka nemůže být v 2NF. Kromě toho, že tato částečná závislost způsobuje, že v tabulce StudentiZkousky vznikají redundance a s nimi spjaté anomálie při aktualizacích a podobně. Aby tabulka StudentiZkousky odpovídala pravidlům pro 2NF, je nezbytně nutné odstranit sloupce, které jsou jen částečně závislé na primárním klíči. Tzn. odstranit sloupce jmeno a . Tyto sloupce se pak umístí do nové tabulky, např. pojmenované Student, kam budou umístěny společně s částí primárního klíče 6

7 tabulky StudentiZkousky, na které jsou závislý, v tomto případě spolu se sloupcem cislostudenta. Tabulka Student, díky tomu že bude obsahovat jen jeden primární klíč (cislostudenta), bude mít všechny neklíčové atributy plně závislé na primárním klíči, a tudíž bude ve 2NF. Po odstranění sloupců jmeno a z tabulky StudentiZkousky bude tabulka StudentiZkousky také ve 2NF, protože všechny její neklíčové prvky budou již plně závislé na celém primárním klíči. cislostudent Jmeno st12124 Jan Nový novy@up.cz st12124 Jan Nový novy@up.cz st14754 Petr Levý levy@up.cz st14754 Petr Levý levy@up.cz cislostudent kodpredmet znamka datum st12124 IDAS st12124 IMAT st14754 IDAS st14754 INPIN Tabulka StudentiZkousky po normalizaci 5 Třetí normální forma Ačkoliv v tabulkách s 2NF je mnohem méně redundance než v tabulkách v 1NF, přesto ještě mohou trpět anomáliemi aktualizace. Technická definice třetí normální formy říká: Tabulka, která již je v 1NF a 2NF a ve které jsou všechny hodnoty ve sloupcích, které nepatří k primárnímu klíči, jsou determinovány pouze sloupci primárního klíče a nejsou determinovány žádnými jinými sloupci. Se třetí normální formou dále souvisí pojem tranzitivní závislost. Tranzitivní závislost popisuje vztah mezi sloupci a, b a c. Pokud a determinuje b (a -> b) a b determinuje c (b -> c), pak sloupec c je tranzitivně závislý na a prostřednictvím b (pokud b nebo c nedeterminuje a). Příklad tranzitivní závislosti je vidět na následující tabulce Student. cisstud jmeno mesto cisfak nazevfak st12475 Tomáš Bok bok@up.cz Praha f1 Elektrotechnická st18745 Jan Nový novy@up.cz Kolín f1 Elektrotechnická st12654 Petr Petr petr@up.cz Brno f2 Ekonomická st17875 Jan Zach zach@up.cz Přelouč f2 Ekonomická 9 Tabulka Studenti před převodem na 3NF 7

8 V tabulce Studenti je primárním klíčem sloupec cisstud. Primární klíč je tak tvořen jen jedním sloupcem, tudíž všechny ostatní sloupce jsou na primárním klíči závislé. Tabulka tedy vyhovuje druhé normální formě. Nyní přichází na řadu kontrola tranzitivních závislostí. Sloupce jmeno, a mesto jsou závislé (determinovány) přímo primárním klíčem cisstud. Sloupce cisfak a nazevfak jsou také závislé na primárním klíči (fakulta, kterou student studuje, je určena právě studentem). Zároveň se ale oba atributy determinují navzájem. Název fakulty je determinován jejím číslem a naopak. Takže například sloupec nazevfak je tranzitivně závislý na primárním klíči cisstud prostřednictvím sloupce cisfak. Tato tranzitivní závislost způsobí, že tabulka nemůže být uznána jako tabulka ve třetí normální formě. Číslo fakulty a její název lze sice jednoznačně identifikovat z primárního klíče cisstud, ale název fakulty můžeme jednoznačně identifikovat i z jejího čísla (cisfak). A právě toto není ve 3NF dovoleno, protože hodnoty sloupců, které nepatří do primárního klíče, musí být určeny výhradně hodnotami sloupce nebo sloupců primárního klíče. Aby byla tabulka převedena do třetí normální formy, musí dojít k odstranění sloupců, které nepatří do primárního klíče a lze je určit pomocí jiných sloupců, které nepatří k primárnímu klíči. V tomto případě bude nutné odstranit sloupce cisfak nebo nazevfak. Výhodnější bude ponechat v tabulce sloupec cisfak a odstranit tak z tabulky Student sloupec nazevfak. Název dané fakulty samozřejmě z databáze nezmizí, je nutné totiž vytvořit novou tabulku, např. Fakulta, která by v tomto případě obsahovala sloupce cisfak (kopie primárního klíče z tabulky Student) a nazevfak. Tím zůstane vazba studenta na fakultu stále zachována. cisfak f1 f2 nazevfak Elektrotechnická Ekonomická 10 Tabulka Fakulty vzniklá normalizací tabulka Student cisstud jmeno mesto cisfak st12475 Tomáš Bok bok@up.cz Praha f1 st18745 Jan Nový novy@up.cz Kolín f1 st12654 Petr Petr petr@up.cz Brno f2 st17875 Jan Zach zach@up.cz Přelouč f2 11 Tabulka Studenti ve 3NF Tabulka Studenti se tak dostane do třetí normální formy, jelikož nyní jsou všechny sloupce, které nejsou součástí primárního klíče, plně závislé na primárním klíči. Totéž platí i o nově vzniklé tabulce Fakulty. Ta je rovněž ve 3NF, i když zde se dá namítnout, že hodnotu primárního klíče můžeme (cisfak) odvodit z názvu fakulty (nazevfak). Název fakulty lze totiž v tomto případě považovat za kandidátní klíč. 8

9 Na základě toho lze zobecnit definici třetí normální formy, tak aby zahrnovala i všechny kandidátní klíče. Proto lze definici pro tabulku s více než jedním kandidátním klíčem zobecnit tak, že tabulka je ve třetí normální formě právě když je v 1NF a 2NF a hodnoty všech sloupců, které nepatří primárnímu klíči, je možné určit pomocí sloupců kandidátního klíče (kandidátních klíčů) a není to možné pomocí žádných jiných sloupců. Navíc se dá podobné zobecnění provést i pro 2NF. Definice 2NF pak zní, že se jedná o tabulku v 1NF a hodnoty všech sloupců, které nepatří primárnímu klíči, je možné určit pomocí sloupců kandidátního klíče (kandidátních klíčů) a žádných jiných sloupců. 6 Boyce-Coddova normální forma Boyce-Coddova normální forma (BCNF) je jistou variací třetí normální formy (v podstatě se jedná o původní 3. NF). BCNF normální formu vymezují stejná pravidla jako třetí normální formu. BCNF normální forma navíc říká, že tranzitivní závislost nesmí existovat ani mezi kandidátními klíči. Technická definice BCNF: Relace se nachází v BCNF, jestliže pro každou netriviální závislost X -> Y platí, že X je nadmnožinou nějakého klíče tabulky. Aby byla BCNF porušena, musí dojít ke splnění několika specifických podmínek: Tabulka musí obsahovat více kandidátních klíčů. Nejméně dva z kandidátních klíčů musí být složené z více atributů. Složené klíče musí mít společné atributy. BCNF bude vysvětlena na následujícím příkladě. Město Ulice PSČ Pardubice Palackého třída Praha 1 Zlatá Pardubice Průmyslová Kolín Jaselská Plaňany Pražská Praha 1 Široká Tabulka 12 Adresy V tabulce Adresy se nachází dvě netriviální funkční závislosti. První z nich je závislost složeného atributu (město, ulice) na atributu psč. Druhou funkční závislostí je psč -> město. Na druhou stranu neplatí že ulice -> psč a neplatí ani město -> psč. Proto platí, že dvojice atributů město a ulice tvoří klíč tabulky. Klíčem tabulky ovšem také může být dvojice psč a ulice. Dá se totiž dokázat, že psč -> město, nikoliv však psč -> ulice (jedna ulice se může vyskytnout ve více městech identifikovaných daným PSČ). Tabulka samotná je ve 3. NF (všechny atributy jsou atomické a tabulka neobsahuje neklíčové atributy), ale BCNF už nesplňuje. 9

10 To způsobuje, že není možné evidovat samotná města s PSČ bez znalosti jejich ulice. Důsledkem toho se v tabulce objevují redundantní data. Atribut město se bude opakovat tolikrát, kolik ulic z daného města bude tabulka obsahovat. Řešením je tabulku Adresy rozložit na dvě tabulky. Město PSČ Pardubice Praha Kolín Plaňany Tabulka 13 - Tabulka Mesta Ulice PSČ Palackého třída Zlatá Průmyslová Jaselská Pražská Široká Tabulka 14 - Tabulka Ulice Existují i jiné a vyšší formy než je 3NF a BCNF. Příkladem můžou být čtvrtá a pátá normální forma. Tyto pokročilé formy se však používají jen ve výjimečných případech a řeší jen řídce vyskytující se problémy. Pokročilejší normální formy jsou popsány v: Pojmy k zapamatování Pojmy: Normalizace, redundance dat, anomálie aktualizace, anomálie vkládání, anomálie mazání, anomálie modifikace, normální formy (1NF, 2NF, 3NF), Boyce- Coddova normální forma, funkční závislost, úplná funkční závislost, částečná funkční závislost, tranzitivní funkční závislost. Problém: Normalizace navržených tabulek, předcházení anomálií aktualizace, převody tabulek do vyšších normálních forem. 10

11 Shrnutí Normalizace slouží pro vytvoření databázového modelu obsahujícího tabulky s minimální redundancí dat. Zároveň musí výsledný databázový model podporovat všechny datové požadavky organizace. Pokud tabulka obsahuje redundantní data, trpí tzv. anomáliemi aktualizace. Tyto anomálie jsou dále členěny na anomálie vkládání, anomálie vymazání a anomálie modifikace. Tabulka vyhovuje první normální formě (1NF), jestliže všechny její sloupce obsahují pouze jednu hodnotu. Tabulka splňuje druhou normální formu, pokud je v 1NF a pokud jsou všechny hodnoty sloupců, které nejsou součástí primárního klíče, jsou determinovány všemi hodnotami sloupců, jenž tvoří primární klíč. Tabulka je ve třetí normální formě, pokud už tabulka je ve 1NF a 2NF a zároveň všechny hodnoty sloupců, které nejsou součástí primárního klíče, jsou determinovány pouze sloupci primárního klíče a nejsou determinovány žádnými jinými sloupci. Funkční závislost vyjadřuje vztah mezi sloupci v tabulce a udává, že sloupce mezi sebou souvisí. Pokud například sloupec a determinuje sloupec b, tak to znamená, že pro hodnotu a vždy v tabulce nalezneme právě jednu hodnotu b. Obráceně tento vztah neplatí. Pro jednu hodnotu b totiž může existovat více hodnot a. Plná funkční závislost znamená, že pokud jsou v tabulce sloupce a a b, pak je b plně determinováno a, pokud b není determinováno jen určitou podmnožinou a. Pokud b je determinováno jen určitou podmnožinou a, hovoří se o tzv. částečné závislosti. Tranzitivní závislost je vztah, který vzniká v tabulce se sloupci a, b a c, když a determinuje b a zároveň b determinuje c, pak c je tranzitivně závislý na sloupci a. Otázky na procvičení 1. K čemu se normalizace při návrhu databáze využívá? 2. Jaké druhy anomálií se mohou vyskytnout, pokud se v tabulce objevují redundantní data? 3. Jaký je základní rys tabulek, nesplňující první normální formu (1NF)? 4. Jaké vlastnosti má tabulka ve druhé normální formě? 5. Co znamená funkční závislost? 6. Jaké je rozdíl mezi plnou funkční závislostí a částečnou funkční závislostí? 7. Jak zní definice třetí normální formy? 8. Objasněte pojem tranzitivní závislost. Jakým způsobem souvisí tranzitivní závislost s normální formou. 11

12 Odkazy a další studijní prameny Odkazy a další studijní prameny 1. CONOLLY, Thomas, Carolyn BEGG a Richard HOLOWCZAK. Mistrovství - databáze: profesionální průvodce tvorbou efektivních databází. Brno: Computer Press, ISBN

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

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

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

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

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

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íč, 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

Ú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

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á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

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

Ú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í 12 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování Univerzální relační

Více

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

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

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

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

Databázové systémy. Úvod do teorie normalizace. Vilém Vychodil

Databázové systémy. Úvod do teorie normalizace. Vilém Vychodil Databázové systémy Úvod do teorie normalizace Vilém Vychodil KMI/DATA1, Přednáška 12 Databázové systémy V. Vychodil (KMI/DATA1, Přednáška 12) Úvod do teorie normalizace Databázové systémy 1 / 10 Přednáška

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

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

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

9. blok Fáze návrhu databáze, konceptuální modelování

9. blok Fáze návrhu databáze, konceptuální modelování 9. blok Fáze návrhu databáze, konceptuální modelování Studijní cíl Tento blok je věnován základům databázového modelování. V základu budou probrány jednotlivé fáze návrhu databáze. Dále bude student tohoto

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

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

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

Databázové systémy Tomáš Skopal

Databázové systémy Tomáš Skopal Databázové systémy Tomáš Skopal - relační model * funkční závislosti, odvozování * normální formy Osnova přednášky Armstrongova pravidla atributové a funkční uzávěry normální formy relačních schémat Armstrongova

Více

6. blok část C Množinové operátory

6. blok část C Množinové operátory 6. blok část C Množinové operátory Studijní cíl Tento blok je věnován problematice množinových operátorů a práce s množinovými operátory v jazyce SQL. Čtenáři se seznámí s operátory, UNION, a INTERSECT.

Více

4. blok část A Logické operátory

4. blok část A Logické operátory 4. blok část A Logické operátory Studijní cíl Tento blok je věnován představení logických operátorů AND, OR, NOT v jazyce SQL a práce s nimi. Doba nutná k nastudování 1-2 hodiny Průvodce studiem Při studiu

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

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

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

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

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

Access Tabulka letní semestr 2013

Access Tabulka letní semestr 2013 MS Access Tabulka letní semestr 2013 Tvorba nové tabulky importem dat propojením externího souboru pomocí Průvodce v návrhovém zobrazení Návrh struktury tabulky Tabulka záznam pole záznamu Jmeno RodCislo

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

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

Databázové systémy. Normálové formy + kandidátní klíče. 2.přednáška

Databázové systémy. Normálové formy + kandidátní klíče. 2.přednáška Databázové systémy Normálové formy + kandidátní klíče 2.přednáška Struktura databází = struktura samotných relací První aspekt návrhu relační databáze 2 cíle: 1. Obsahový (odpovědi na otázky) 2. Minimalizace

Více

Microsoft. Access. Databáze s více tabulkami. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie

Microsoft. Access. Databáze s více tabulkami. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie Microsoft Access Databáze s více tabulkami Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie Databáze s více tabulkami standardní databáze se většinou skládá z více tabulek každá tabulka

Více

DBS Normální formy, normalizace

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

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

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

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

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

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

12. blok Fyzický návrh databáze

12. blok Fyzický návrh databáze 12. blok Fyzický návrh databáze Studijní cíl Tento studijní blok se zabývá metodologií fyzického návrhu databáze. Především se zabývá fází převodu logického modelu na model fyzický. Bude vysvětlen účel

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

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á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

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

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

6. blok část B Vnořené dotazy

6. blok část B Vnořené dotazy 6. blok část B Vnořené dotazy Studijní cíl Tento blok je věnován práci s vnořenými dotazy. Popisuje rozdíl mezi korelovanými a nekorelovanými vnořenými dotazy a zobrazuje jejich použití. Doba nutná k nastudování

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

DATABÁZE MS ACCESS 2010

DATABÁZE MS ACCESS 2010 DATABÁZE MS ACCESS 2010 KAPITOLA 5 PRAKTICKÁ ČÁST TABULKY POPIS PROSTŘEDÍ Spuštění MS Access nadefinovat název databáze a cestu k uložení databáze POPIS PROSTŘEDÍ Nahoře záložky: Soubor (k uložení souboru,

Více

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

Úvod do databázových systémů. Cvičení 12 Ing. Martin Zwierzyna Úvod do databázových systémů Cvičení 12 Ing. Martin Zwierzyna Základní pojmy Redundance Stejná data jsou uložena v databázi na více místech, zbytečně se opakují Řešení: Minimalizace redundance Základní

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

2. Konceptuální model dat, E-R konceptuální model

2. Konceptuální model dat, E-R konceptuální model 2. Konceptuální model dat, E-R konceptuální model Úvod Databázový model souhrn prostředků, pojmů a metod, jak na logické úrovni popsat data a jejich strukturu výsledkem je databázové schéma. Databázové

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

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

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

NORMALIZACE Část 2 1

NORMALIZACE Část 2 1 NORMALIZACE Část 2 1 Úprava relačního schématu databáze NORMALIZACE Eliminaci aktualizačních anomálií zajišťujeme převedením relačního schématu do 3NF, resp. BCNF. (Normalizovat lze pomocí) DEKOMPOZICE

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

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

Databáze I. 5. přednáška. Helena Palovská Databáze I 5. přednáška Helena Palovská palovska@vse.cz SQL jazyk definice dat - - DDL (data definition language) Základní databáze, schemata, tabulky, indexy, constraints, views DATA Databáze/schéma

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

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

Semestrální práce 2 znakový strom

Semestrální práce 2 znakový strom Semestrální práce 2 znakový strom Ondřej Petržilka Datový model BlockFileRecord Bázová abstraktní třída pro záznam ukládaný do blokového souboru RhymeRecord Konkrétní třída záznamu ukládaného do blokového

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 Katedra informatiky Database Research Group Úvod do databázových systémů Cvičení 3 Ing. Petr Lukáš petr.lukas@vsb.cz

Více

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

Informační systémy ve zdravotnictví. 6. cvičení Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Informační systémy ve zdravotnictví 6. cvičení Ing. Petr Lukáš petr.lukas@nativa.cz Ostrava, 2014 Opakování Relace

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

JAK ČÍST ZÁZNAM O VYUŽÍVÁNÍ ÚDAJŮ V REGISTRU OBYVATEL

JAK ČÍST ZÁZNAM O VYUŽÍVÁNÍ ÚDAJŮ V REGISTRU OBYVATEL JAK ČÍST ZÁZNAM O VYUŽÍVÁNÍ ÚDAJŮ V REGISTRU OBYVATEL Název dokumentu: Jak číst záznam o využívání údajů v registru obyvatel Verze: 1.8 Autor: Správa základních registrů Datum aktualizace: 25. 2. 2014

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

Báze a dimenze vektorových prostorů

Báze a dimenze vektorových prostorů Báze a dimenze vektorových prostorů Buď (V, +, ) vektorový prostor nad tělesem (T, +, ). Nechť u 1, u 2,..., u n je konečná posloupnost vektorů z V. Existují-li prvky s 1, s 2,..., s n T, z nichž alespoň

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

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

Ú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

ÚZEMNĚ ANALYTICKÉ PODKLADY. Ing. Jitka Olševičová Ing. Tomáš Prokop

ÚZEMNĚ ANALYTICKÉ PODKLADY. Ing. Jitka Olševičová Ing. Tomáš Prokop ÚZEMNĚ ANALYTICKÉ PODKLADY Ing. Jitka Olševičová Ing. Tomáš Prokop Definice územně analytických podkladů zákon č. 183/2006 Sb., o územním plánování a stavebním řádu (dále jen stavební zákon ), ve znění

Více

Žádost o uznání předmětů - student

Žádost o uznání předmětů - student Žádost o uznání předmětů - student Nově přijatí studenti s ORION kontem Obsah 1. Přístup a přihlašovací údaje... 1 2. Popis formuláře... 2 3. Postup vyplňování žádosti... 3 4. Úprava vloženého předmětu

Více

Microsoft. Access. Nová databáze, návrh tabulky. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie

Microsoft. Access. Nová databáze, návrh tabulky. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie Microsoft Access Nová databáze, návrh tabulky Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie Dlouhodobý úkol Ahoj! Dnes vás čeká vytvoření první databáze (tabulky). Budeme evidovat

Více

UDBS Cvičení 10 Funkční závislosti

UDBS Cvičení 10 Funkční závislosti UDBS Cvičení 10 Funkční závislosti Ing. Miroslav Valečko Zimní semestr 2014/2015 25. 11. 2014 Návrh schématu databáze Existuje mnoho způsobů, jak navrhnout schéma databáze Některá jsou lepší, jiná zase

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

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

1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam.

1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam. 10.6.7 POSTUP TVORBY KOMBINOVANÉHO SEZNAMU 1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam. 2. V rozbalovací nabídce se seznamem datových typů vyberte volbu

Více

EXTRAKT z mezinárodní normy

EXTRAKT z mezinárodní normy EXTRAKT z mezinárodní normy Extrakt nenahrazuje samotnou technickou normu, je pouze informativním ICS 03.220.01; 35.240.60 materiálem o normě. Inteligentní dopravní systémy Požadavky na ITS centrální datové

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

Relační model dat (Codd 1970)

Relační model dat (Codd 1970) Relační model dat (Codd 1970) Odkud vychází, co přináší? Formální abstrakce nejjednodušších souborů. Relační kalkul a relační algebra (dotazovací prostředky). Metodika pro posuzování kvality relačního

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ů 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

DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS. (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat)

DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS. (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat) DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat) DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 62 Databáze a systémy pro uchování

Více

KIV/ZIS - primární klíč

KIV/ZIS - primární klíč KIV/ZIS - primární klíč každý řádek musí být unikátně identifikován tj. hodnota primárního klíče se v tabulce nesmí opakovat nejčastěji speciální sloupec id (celé číslo) teoreticky může být libovolného

Více

13 Barvy a úpravy rastrového

13 Barvy a úpravy rastrového 13 Barvy a úpravy rastrového Studijní cíl Tento blok je věnován základním metodám pro úpravu rastrového obrazu, jako je např. otočení, horizontální a vertikální překlopení. Dále budo vysvětleny různé metody

Více

RELAČNÍ DATABÁZE ACCESS

RELAČNÍ DATABÁZE ACCESS RELAČNÍ DATABÁZE ACCESS 1. Úvod... 2 2. Základní pojmy... 3 3. Vytvoření databáze... 5 4. Základní objekty databáze... 6 5. Návrhové zobrazení tabulky... 7 6. Vytváření tabulek... 7 6.1. Vytvoření tabulky

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

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

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

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

Jak vytvořit sestavy na míru v registru zvířat (IZR)

Jak vytvořit sestavy na míru v registru zvířat (IZR) Jak vytvořit sestavy na míru v registru zvířat (IZR) Obsah Jak vytvořit sestavy na míru v registru zvířat (IZR)... 1 1. Úvod... 1 2. Sestavy v MS Excel... 2 2.1. Volba sloupců sestavy... 2 2.2. Volba řádků

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 Katedra informatiky Database Research Group Úvod do databázových systémů Cvičení 1 Ing. Petr Lukáš petr.lukas@vsb.cz

Více

KIV/ZIS - primární klíč

KIV/ZIS - primární klíč KIV/ZIS - primární klíč každý řádek musí být unikátně identifikován "speciální" sloupec, nejčastěji pojmenován id může být libovolného typu třeba i Ano/ne, pak ale může tabulka obsahovat maximálně 2 záznamy

Více

Databázové systémy 1. Cvičení č. 9. Fakulta elektrotechniky a informatiky Univerzita Pardubice

Databázové systémy 1. Cvičení č. 9. Fakulta elektrotechniky a informatiky Univerzita Pardubice Databázové systémy 1 Cvičení č. 9 Fakulta elektrotechniky a informatiky Univerzita Pardubice Informace o přednáškách 23.4.2012 11:00 13:45 Logický databázový model, Normalizace 23.4.2012 15:00 17:00 Fyzický

Více

Microsoft Access. Úterý 26. února. Úterý 5. března. Typy objektů databáze: Vytvoření a návrh nové tabulky

Microsoft Access. Úterý 26. února. Úterý 5. března. Typy objektů databáze: Vytvoření a návrh nové tabulky Úterý 26. února Microsoft Access Databáze je seskupení většího množství údajů, které mají určitou logiku a lze je určitým způsobem vyhodnocovat, zpracovávat a analyzovat Access je jedním z programů určených

Více

Pro zvládnutí této kapitoly budete potřebovat 4-5 hodin studia.

Pro zvládnutí této kapitoly budete potřebovat 4-5 hodin studia. Úvod (Proč se zabývat statistikou?) Statistika je metoda analýzy dat, která nachází široké uplatnění v celé řadě ekonomických, technických, přírodovědných a humanitních disciplín. Její význam v poslední

Více

JAK ČÍST ZÁZNAM O VYUŽÍVÁNÍ ÚDAJŮ V REGISTRU OBYVATEL

JAK ČÍST ZÁZNAM O VYUŽÍVÁNÍ ÚDAJŮ V REGISTRU OBYVATEL JAK ČÍST ZÁZNAM O VYUŽÍVÁNÍ ÚDAJŮ V REGISTRU OBYVATEL Název dokumentu: Jak číst záznam o využívání údajů v registru obyvatel Verze: 1.7 Autor: Správa základních registrů Datum aktualizace: 15.4.2013 Účel:

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