Databáze
Návrh Není to legrace a pro kvalitní databázi je nutné věnovat řadě věcem čas a je nutné použít i papír a tužku!!! Co je to databáze?
Kolik je zde různých prvků? značkamodelbarva cena AudiA4černá ,00 Kč AudiR8modrá ,00 Kč ŠkodaYetimodrá ,00 Kč ŠkodaSuperbčerná ,00 Kč VWGolfmodrá ,00 Kč VWPassatčerná ,00 Kč POJMY: tabulka, pole, záznam
Kolik je zde různých prvků? = 17 Úspora 7 záznamů ve dvou polích to je docela už slušné Co kdyby to bylo záznamů z to by se při psaní už dost zjednodušilo
id_značkamodelid_barva cena 1A ,00 Kč 1R ,00 Kč 2Yeti ,00 Kč 2Superb ,00 Kč 3Golf ,00 Kč 3Passat ,00 Kč 1Audi 2Škoda 3VW 1modrá 2černá
id_značkamodelid_barva cena 1A ,00 Kč 1R ,00 Kč 2Yeti ,00 Kč 2Superb ,00 Kč 3Golf ,00 Kč 3Passat ,00 Kč 1Audi 2Škoda 3VW 1modrá 2černá 1A ,00 Kč Nový záznam Další tabulka?
Relace Vztah/ provázanost tabulek Typy: 1:1 1:N M:N Co náš příklad?
id_značkamodelid_barva cena 1A ,00 Kč 1R ,00 Kč 2Yeti ,00 Kč 2Superb ,00 Kč 3Golf ,00 Kč 3Passat ,00 Kč 1Audi 2Škoda 3VW 1modrá 2černá Auto má 1 barvu Barva může být u N auto Auto má vždy 1 značku Značka vyrábí několik aut(N) Obě relace 1:N
1:1 – vazba závislá(př. Láhev, zátka/ člověk, RČ) = každá láhev má zátku, každá zátka je na konkrétní lahvi -Člověk, otisk prstu 1:N- učitel/ student(př.12), člověk/tel.číslo M:N-autor/kniha(2 autoři napsali knihu i autor napsal 2 knihy), předmět/učebna(několik předmětů se učí v N307, ale i PVA se učí v několika učebnách)
Př: SPZ a majitel vozu Taxi – vůz a zákazník PC – počet uživatelů a PC
Normálová forma 6 forem (0-5NF) určují obsah tabulek(nadbytečnost, duplicita)
1NF všechny atributy jsou atomické(nedělitelné)
2NF každý atribut, který není primárním klíčem je na primárním klíči úplně závislý
3NF Použití tranzitivity(existuje vztah mezi 2 poli) Plat a funkce bude určitě mít vztah
BNCF(Boyce-Coddova NF) Často je automaticky už při 3NF K odstranění problémů(anomáliím)
4NF
Shrnutí pojmů Databáze Tabulka Pole Záznam Entita Atribut Vazba
Shrnutí pojmů Databáze - uspořádaná množina informací (dat) Tabulka - slouží k přímému uložení dat Pole - odpovídá jeden sloupec tabulky Záznam - odpovídá jeden řádek tabulky Entita - prvek reálného světa (např. člověk, stroj) Atribut - např. jméno, příjmení, stav, plat Vazba - relace