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
Seznámit se se základními pojmy v oblasti databází Ukázat si typické příklady databází
Zkuste odpovědět na základě svých zkušeností
Databáze je množina strukturovaných dat, většinou vztažená k nějakému předmětu, oblasti či a službě a sloužící potřebám mnoha různých aplikací, ale s minimální duplikací jednotlivých položek. Pokusme se tuto definici rozebrat
množina dat - je to prostě množství různých údajů - čísel, textů a podobně. strukturovaná data - že to není jen "hromada údajů", ale dá se z ni vyčíst "význam" jednotlivých údajů vztažená k ... - data mají nějakou logickou souvislost jméno -> příjmení -> datum narození -> ..., né jenom jméno, katalogové číslo knížky, výška stromu, hloubka moře....
sloužící potřebám mnoha různých sloužící potřebám mnoha různých... - hlavní význam dat v databázi je v tom, že ty samé údaje mohu využívat několikrát, ale zadat, zaktualizovat, změnit jen jednou s minimální duplikací - vyplývá z předchozího, ideální je minimum opakování - menší možnost chyby, snadnější údržba, udržení aktuálnosti.
Kontrola redudandnosti Nezávislost dat Vymyslíme co to bude?
Znamená to, že se snažíme o to, aby v databázi bylo minimum duplicitních údajů. V klasickém souborovém systému má každá aplikace svůj "chlíveček", kde si uchovává svá data. Tím, ale dostávám mnoho opakovaných (redudandních) hodnot. Což poté způsobuje problém při aktualizacích.
Když k datům v databázi přistupuji, aktualizuji je musí docházet ke změnám struktury. Nicméně nemusím data přeuspořádávat fyzicky, ale pouze logicky. Tedy, když něco přidám v abecedním pořádku "doprostřed", nemusí se všechny další hodnoty na disku přesunovat, ale tento nový záznam se připojí na konec databáze (fyzicky), ale v programu se mi zobrazuje na "správném" místě (logicky).
Jednu databázi tak může sdílet několik programů - na disku jsou data umístěny "náhodně", zobrazování a práci s nimi pak zajišťuje program, který je zobrazuje podle uživatelských požadavků (logicky). Samozřejmě, zde narážíme na problém nutnosti vědět jak jsou data uspořádána, jak umístěna, jak k ním korektně přistupovat.
V databázi můžou být záznamy uloženy (provázány) prakticky dvěma způsoby: - nezávisle - primární klíč rozhoduje o fyzickém umístění záznamu. - asociovaně - záznamy jsou umístěny na základě vztahů s dalšími záznamy. Vztah mezi nimi zprostředkovává tzv. ukazatel (pointer). Fyzický ukazatel udává umístění záznamu na disku; logický ukazatel je pak hodnota vypočítávána z fyzického ukazatele.
- jednoduché databáze - databáze složená z jediné tabulky, například adresář, případně i list tabulkového editoru (pokud není propojen s jinými listy). - hierarchická databáze - několik vzájemně propojených tabulek, ale propojených jednosměrnými vztahy (tj. je zde jasný vztah podřízenosti a nadřízenosti). Příkladem by mohly být adresáře a podadresáře v operačním systému.
- síťová databáze - obsahuje vzájemně propojené tabulky - síťová databáze - obsahuje vzájemně propojené tabulky. Propojení mezi nimi je velmi volné, není jasný vztah podřízenosti, nadřízenosti. Vznikají tedy velmi složité struktury. Dnes jsou nejpoužívanější relační databáze - což je jeden z druhů síťových databází, kde jsou zaváděny přísná pravidla na vztahy mezi tabulkami.
- objektově orientované databáze - moderní typ databázi, na rozdíl od klasických databází neukládá pouze data, ale i instrukční kód, který může být proveden při přístupu k datům.
Zkusme popsat databáze se kterými se setkáváme v běžném životě
Znáte definici databáze a umíte ji popsat Znáte základní vlastnosti databází Víte o typech databází Znáte konkrétní příklady databází
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