vod do relanch databz Martin egklitz 2013 Relan
Úvod do relačních databází Martin Žegklitz 2013
Relační databáze - opakování • Databáze: Ø Pohled I. – databáze (datová základna) jako uspořádaná množina informací (dat) uložená na paměťovém médiu Ø Pohled II. (širší pojetí) – databáze jako soubor dat a softwarových prostředků, umožňujících manipulaci s uloženými daty a přístup k nim • Relační databáze – databáze založená na relačním modelu – pohlíží na uložená data jako na záznamy uspořádané v tabulkách • 1970 – návrh relačních databázových struktur Edgarem F. Coddem
Konceptuální modelování • Konceptuální (sémantický) model je snahou o popis dat v databázi nezávisle na jejich uložení • Konceptuální model představuje formální popis modelované reality • Hlavním úkolem k. modelování je nalezení entit, vztahů a atributů • Slouží pro: Ø Chápání objektů uživateli/projektanty Ø Integraci uživatelských pohledů a návrh databáze Ø Zobrazení mezi uživatelskými pohledy a fyzickým uložením dat
Zařazení konceptuálního modelování 1) Analýza, sběr dat, shromáždění požadavků uživatelů 2) Konceptuální modelování – zjednodušený strukturovaný návrh reality 1) Entitně-relační konceptuální modelování 2) Relační konceptuální modelování 3) Logický návrh databáze (mapování datového modelu) 4) Fyzický návrh databáze
Entitně-relační model – struktura, význam, prvky • E-R konceptuální model je množina pojmů pomocí níž se na konceptuální úrovni vyjadřuje struktura databáze • Entita – samostatně existující objekt reálného světa (fyzický – člověk, zvíře … / nehmotný – firma, přednáška …) • Atribut – popis entity, každá entita má atribut(y) (např. entita zaměstnanec má atributy jméno, adresu, datum narození …) • Instance entity – konkrétní naplnění entity (záznam) (npař. u entity auto bude její instance BMW X 6 …)
Entity a atributy
Entity a instance
Entity a atributy
Entitně-relační model – struktura, význam, prvky • Doména – množina hodnot (instancí) kterých může atribut nabývat (např. atribut rok výroby u entity automobil může nabývat jen číselnou hodnotu a to navíc jen od/do určitého roku – př. 1769, 1770, …. 2013) • Typy atributů z hlediska struktury a uložení Ø Jednoduché (Atomické) x Složené Ø Jednohodnotové x Vícehodnotové Ø Uložené x Odvozené (Vypočtené) • Typy atributů z hlediska integrity databáze Ø Povinné (*) x Volitelné (°)
Příklady typů atributů • Jednoduchý Ø Ulice, číslo poisné, ID, jméno, příjmení … • Složený Ø Adresa … • Jednohodnotový Ø Věk, výška, hmotnost … • Vícehodnotový Ø Barva auta, email, telefon … • Odvozený Ø Věk a datum narození lze odvodit z rodného čísla …
Entitně-relační model – struktura, význam, prvky • Relace (vztah) – vazba mezi děma nebo více entitami • Relace je ovlivněna dvěma faktory Ø Kardinalita relace = četnost/násobnost vztahu Ø Parcialita relace = nutnost/volitelnost vztahu
Kardinalita relací • Existují 3 (4) typy kardinalit (četností) Ø Mezi záznami z různých tabulek není žádná spojitost → nedefinuje se žádný vztah Ø 1: 1 – záznam z jedné tabulky interaguje s právě jedním záznamem z jiné tabulky a naopak Ø 1: N – jeden záznam z jedné tabulky interaguje s více záznamy z jiné tabulky, ty naopak ineragují jen s tímto jedním záznamem Ø N: M – několik záznamlů z jedné tabulky interaguje najednou s více záznami z jiné tabulky
Kardinalita relací
Parcialita vztahů • Existují 2 typy parcialit vztahů Ø Vztah povinný – záznam z jedné tabulkyy musí interagovat se záznamem z jiné tabulky Ø Vztah nepovinný – záznam z jedné tabulky nutně nemusí interagovat se záznamy z jiných tabulek
Znázornění vztahu na základě kardinalitya parciality
Vazební (asociační) tabulky • Vztahují se ke kardinalitě vztahu M: N – ten je technicky špatně realizovatelný → rozděluje se proto na 2 vztahy 1: N a 1: M za pomoci tzv. vazebních (asociačních) tabulek
Entitně relační diagram
Relační model – význam, struktura, prvky • Relační databázový model sdružuje data do tzv. relací (tabulek), které obsahují n-tice (řádky) • Jednotlivé části záznamu jsou rozděleny podle sloupců (atributů) • Každý sloupec má jednoznačně daný název, datový typ (integer, char …) záznamu a rozsah možných hodnot záznamu (doménu) • Záznam se stává n-ticí (řádkem) tabulky • Sloupce stejných datových typů v různých tabulkách mohou vytvářet vztahy
Struktura uložení dat v relačních databázích Tabulka Sloupce (Atributy) N-tice (řádek, záznam) Entita
Relační model – význam, struktura, prvky • Kolekce více tabulek a jejich funkčních vztahů, indexů a dalších součástí tvoří reklační databázi • Vznamem a výhodou relačních modelů je: Ø přirozená reprezentace zpracovávaných dat Ø Možnost snadného definování a zpracování vazeb Ø Jednoduché a efektivní vyhledávání dat • Pro identifikaci, vyhledávání a propojování dat se používají tzv. primární klíče (primary key) a cizí klíče (foreign key)
Primární klíč • Primární klíč je atribut či soustavu atributů jejichž hodnoty tvoří jednoznačnou identifikaci řádku relace (např. v tabulce zaměstnanci bude primárním klíčem u všech konkrétních záznamů – zaměstannců - rodné číslo zaměstnanců) • Každý atribut tvořící primární klíč se nazývá klíčový atribut, ostatní jsou neklíčové atributy
Cizí klíč • Cizí klíč je atribut či soustava atributů pomocí níž se vytváří spojení s jedním nebo více sloupci z jiné (cizí) tabulky • Pokud se hodnoty sloupců z daných tabulek shodují, pak příslušný řádek z cizí tabulky rozvíjí řádek zdrojové tabulky skrze toto spojení = reference (odkaz)
Propojení tabulek pomocí klíčů
Integritní omezení • Integritní omezení jsou součástí definice databáze • Jsou řízena SŘBD (systémem řízení báze dat) • Udržují databázi ve smysluplném celku Ø Definují domény Ø Definují reakce systému na mazání/editaci/vytváření důležitých dat (cizích klíčů aj. )
Relační diagram
Příklad pro tvorbu konceptuálního modelu Na základě analýzy textu níže stanovte vhodné entity s patřičnými atributy a vytvořte entitně-relační i relační model • Na mraveništi se život nezastaví. Celé mraveniště se mravenci jen hemží. Jsou zde mravenci dělníci, kteří staví nové a opravují staré části na periferiích i ve středu mraveniště, mravenci vojáci, kteří hlídají různé části mraveniště a loví potravu mimo mraveniště a mravenčí královna, která je přímo uprostřed mraveniště a klade vajíčka. Vše zde má svůj smysl.
- Slides: 26