26
1. „Úvod do databázových systémů“ Ing. Jan Šudřich [email protected]

„Úvod do databázových systémů“

  • Upload
    hewitt

  • View
    51

  • Download
    0

Embed Size (px)

DESCRIPTION

„Úvod do databázových systémů“. Ing. Jan Šudřich j an.sudrich @mail.vsfs.cz. Úvod do databázových systémů. Cíl: Cílem je poskytnout studentům informaci o vývoji databázových systémů, základní pojmy z hlediska relačního modelu a seznámit je s prostředím MS ACCESS. Úvod do databázových systémů. - PowerPoint PPT Presentation

Citation preview

Page 1: „Úvod do databázových systémů“

1.

„Úvod do databázových systémů“

Ing. Jan Šudř[email protected]

Page 2: „Úvod do databázových systémů“

2.

Úvod do databázových systémů

Cíl:

• Cílem je poskytnout studentům informaci o vývoji databázových systémů, základní pojmy z hlediska relačního modelu a seznámit je s prostředím MS ACCESS.

Page 3: „Úvod do databázových systémů“

3.

Úvod do databázových systémů

Organizace dnešního dne:

• Seznámení s vývojem databázových systémů (teorie).

• Seznámení s osobním databázovým systémem MS ACCESS.

• Samostatná práce v databázovém systému MS ACCESS s podporou učitele.

Page 4: „Úvod do databázových systémů“

4.

Úvod do databázových systémů

Literatura:• Písek S., Databáze v Accessu v rekordním čase,

Praha: Grada Publishing, 2003. ISBN 80-247-0572-9.

• Fikáček I., Rozehnal I., Access tvorba aplikací, podrobný průvodce programátora, Praha: Grada Publishing, 1999. ISBN 80-7169-420-7.

• Kubálek T., Kubálková., Databázový systém Microsoft Office Access, verze 2007 CZ, Praha: Oeconomica, 2009. ISBN 978-80-245-1518-2.

• Kruczek A., Microsoft Office Access 2007 : podrobná uživatelská příručka, Brno : Computer Press, 2007. ISBN 978-80-251-1608-1.

Page 5: „Úvod do databázových systémů“

5.

Úvod do databázových systémů

Podmínky pro udělení zápočtu

1. Navrhnout malou databázi pro osobní použití, která bude mít alespoň 2 tabulky, mezi nimiž bude nějaká relace (vazba).

2. Návrh databáze podložit v podobě E-R diagramu.

3. Převést návrh v E-R diagramu do prostředku MS Access.

4. Vytvořit dotaz, který bude zobrazovat data z obou tabulek.

5. Vytvořit sestavu z vytvořeného dotazu.

6. Vytvořit formulář z libovolné tabulky.

Page 6: „Úvod do databázových systémů“

6.

Úvod do databázových systémů

Vývoj databázových systémů v čase:

• Vznik prvních papírových kartoték – operace prováděl přímo člověk, šlo určitým způsobem třídit informace podle různých kritérií. Nevýhodou byla možnost ztráty lístečků a dlouhá doba vyhledávání.

• Přechod z ručního zpracování dat na stroje – souvisí s objevem děrnoštítkových strojů. Jako první velké strojové zpracování dat bývá uváděno zpracování voleb v USA v roce 1890.

• Vynález tranzistoru a boom ve vývoji počítačů – jako první výpočetně náročné operace se objevovaly výpočty pro vojenské účely. Později se objevily i první systémy pro hromadné zpracování dat. Nevýhodou bylo, že data byla zpracovávána na jednom počítači, často do jednoho souboru, který nebyl použitelný pro odlišné databázové systémy. Jednalo se o tzv. „agendové zpracování“.

Page 7: „Úvod do databázových systémů“

7.

Úvod do databázových systémů

Vývoj databázových systémů v čase:

• Oddělení dat od programu, který je zpracovává – Na počátku 60. let došlo k oddělení dat od programů, který je zpracovává. Důvodem bylo zefektivnění v používání dat více systémy a snadnější údržba systému.

• Objevuje se poprvé pojem DBMS (česky SŘBD) – Došlo k tomu, že byl vybudován větší systém, který zahrnoval programovou podporu a data pod jednou střechou i když odděleně.

Page 8: „Úvod do databázových systémů“

8.

Úvod do databázových systémů

Systémy řízení báze dat – SŘBD, DBMS

• Rozumí se tím spojení programů, které slouží k manipulaci + datové soubory.

• Jedná se o soustavu programů, která umožňuje:- organizování dat,- efektivní správu dat,- centrální popis dat,- přístup k datům z různých aplikací,- zabraňuje současné změně dat více uživateli.

Jak k datům můžeme přistupovat?K datům je možné přistupovat výhradně jen přes SŘBD. Ten má svůj způsob jak s ním komunikovat. Nejběžnější způsob jak se SŘBD je prostřednictvím SQL. Jedná se o speciální jazyk, kdy se pomocí jednoduchých příkazů a jejich skládání můžeme dotazovat a získávat výsledky na své dotazy ze SŘBD.

Page 9: „Úvod do databázových systémů“

9.

Úvod do databázových systémů

Důvody pro zavedení SŘBD

• Nelze do dat zanést chybu – SŘBD řídí přístup k datům sám.

• Systém zaručuje dodržení přístupových práv k datům.

• Umí data uložit na souborové systémy efektivně, umožňuje jejich kompresi a dekompresi.

Page 10: „Úvod do databázových systémů“

10.

Úvod do databázových systémů

Definice pojmu „data“

• Jedná se o údaje, které o daném objektu něco vypovídají. Musí mít nějaký informační smysl. Není vůbec rozhodující v jaké jsou formě (tabulky, grafy …..).

• Data jsou rozdělena na atributy, můžeme tím porozumět vlastnosti objektu (entity), o které vypovídají.

Page 11: „Úvod do databázových systémů“

11.

Úvod do databázových systémů

Definice pojmu „záznam - record“

• Někdy bývá označován pojmem databázová věta, anglicky také record. Jedná se o zápis v databázi o jedné konkrétní entitě.

Příklad (kniha):1. Název2. Autor3. Nakladatelství4. Rok vydání5. Edice

Souhrn těchto údajů tvoří v databázi jeden záznam

Page 12: „Úvod do databázových systémů“

12.

Úvod do databázových systémů

Definice pojmu „datový typ“

• Každá položka v databázi musí mít definovaný datový typ

Jedná se typ údaje, který v databázi uchováván:

• Textový typ - obyčejný textový vstup.• Číselné typy- pro uložení celých a reálných čísel s pevnou i plovoucí

desetinnou tečkou. • Logický typ - slouží k uložení logické hodnoty (True/False, Yes/No). • Memo - pro uložení textu měnící se délky. Nepleťte prosím s textovým

typem.• Datumový typ - pro uložení datumu nebo datumu a času.

Na základě definice datového typu se pak kontrolují tzv. integritní omezení databáze.

Page 13: „Úvod do databázových systémů“

13.

Úvod do databázových systémů

Druhy datových modelů:

• Hierarchický • Síťový• Relační • Objektový

Rozdělení je prováděno na základě databázové struktury

Page 14: „Úvod do databázových systémů“

14.

Úvod do databázových systémů

Hierarchický model

Data jsou organizována do stromové struktury. Každý záznam představuje uzel ve stromové struktuře, vzájemný vztah mezi záznamy je typu rodič/potomek.

Použití hierarchického modelu je vhodné tam, kde i zájmová realita má hierarchickou strukturu. Nalezení dat v hierarchické databázi vyžaduje navigaci přes záznamy směrem dolů (potomek), nahoru (rodič) a do strany (další potomek).

Nevýhody modelu:• v některých případech nepřirozená organizace dat • složité operace vkládání a rušení záznamů

Page 15: „Úvod do databázových systémů“

15.

Úvod do databázových systémů

Síťový model

Síťový model dat je v podstatě zobecněním hierarchického modelu dat, který doplňuje o mnohonásobné vztahy. Tyto vztahy jsou označovány jako C-množiny neboli Sets. Tyto sety propojují záznamy různého či stejného typu, přičemž spojení může být realizováno na jeden nebo více záznamů.

Nevýhody modelu:• obtížná změna jeho struktury

Page 16: „Úvod do databázových systémů“

16.

Úvod do databázových systémů

Objektový model

Vznikl na základě rozmachu objektově orientovaných programovacích jazyků. Data nejsou uložena ve formě tabulek ale do objektů, které mají stěnu z metod.

Uvnitř objektu jsou data, stěna objektu tvoří metody, co s nimi lze dělat.

pes.barva....vrátí barvu objektu pes.

Často se objekty slučují do tříd, kdy mohou metody podědit ze svých tříd. Třída je typ objektu, který v sobě slučuje objekty stejných vlastností.

Nevýhody modelu:• Obtížná změna jeho struktury, náročnější na správu.• Bohužel zatím nedošlo k jejich vyladění do podoby, aby je bylo možno

použít jako náhradu za relační databáze.

Page 17: „Úvod do databázových systémů“

17.

Úvod do databázových systémů

Relační model

Jedná se o nejmladší databázový model, který popsal matematik Edgar Fred Codd. V roce 1948 se přestěhoval z Velké Británie do USA a s drobnou přestávkou pracoval v IBM.

V roce 1970 popsal relační databázový model.

V současnosti je tento model pro svou jednoduchost používán ve většině komerčních SŘBD.

Page 18: „Úvod do databázových systémů“

18.

Úvod do databázových systémů

Relační model

Struktura je dána jednoduchou tabulkou. Tabulka se skládá z řádků a sloupců.

Veškeré operace, kterými jsou:CREATEINSERTUPDATEDELETESELECTprobíhají výhradně na těchto tabulkách.

Řádky tvoří jednotlivé záznamy.Sloupce jsou vlastnosti, které zapisujeme do databáze.

Page 19: „Úvod do databázových systémů“

19.

Úvod do databázových systémů

Rozdělení databází podle rozsahu

Databáze pro osobní potřebuOsobní databáze, které nejsou obvykle využívány dalšími uživateli (jsou

jednouživatelské), jsou malé rozsahem a nejsou náročné na souborový systém. K jejich vytvoření a využívání slouží obvykle nástroje balíku OFFICE. Často lze potkat databáze MS ACCESS, FOXPRO a FOXPRO for Windows.

Rozsáhlá firemní řešeníJedná se o řešení, které se uplatňuje v podmínkách, kdy záleží na

bezpečnosti dat, na ukončení probíhajících transakcí. Databázi pomocí softwarového klienta sdílí uživatel s ostatními uživateli. Typickými zástupci jsou ORACLE, INFORMIX,SAP.

„Princip klient/server“

Page 20: „Úvod do databázových systémů“

20.

Úvod do databázových systémů

Pojmy, se kterými se potkáme v relačních databázích

E-R DiagramJedná se o základní zobrazení entit a vztahů mezi nimi (tzv. relací), proto

relační.

• Entita je znázorněna obdélníčkem s názvem entity (podstatné jméno).• Vztah je znázorněn kosočtvercem (sloveso).• Atribut znázorněn u entity pomocí kroužku a jména atributu.

E-R diagram by měl být výstupem z analýzy současného stavu u zadavatele. Je velmi výhodné E-R diagram namalovat a nechat si odsouhlasit zadavatelem, jinak se může stát, že celý databázový systém může být špatně navrhnut.

Page 21: „Úvod do databázových systémů“

21.

Úvod do databázových systémů

Pojmy, se kterými se potkáme v relačních databázích

RelaceRelace je vztah mezi dvěma tabulkami. Pomocí relací můžeme vyjádřit

vztah mezi entitami.

Typy relací:

Relace 1:1 – tento typ relace znamená, že jeden záznam v tabulce jedné entity, odpovídá přesně jednomu záznamu v tabulce druhé entity.

Relace 1:N – tento typ relace znamená, že jeden záznam v tabulce jedné entity, odpovídá více záznamům v tabulce druhé entity.

Relace M:N – tento typ relace znamená, že více záznamů v tabulce jedné entity, odpovídá více záznamům v tabulce druhé entity.

Page 22: „Úvod do databázových systémů“

22.

Úvod do databázových systémů

Pojmy, se kterými se potkáme v relačních databázích

Integrita databázeData v databázi splňují tzv. "integritní omezení". Nelze zadat data

nesmyslná, neodpovídající nadefinovaným datovým typům.

Pokud dojde k výmazu jedné hodnoty, na kterou jsou vázány jiné, dojde k odmazání i těchto hodnot. Integrita je ověřována při příkazu update a její ověření provádí SŘBD.

Page 23: „Úvod do databázových systémů“

23.

Úvod do databázových systémů

Pojmy, se kterými se potkáme v relačních databázích

Integritní omezeníNejčastěji je definuje uživatel při návrhu databáze. Například do

textového údaje nelze vyplnit číselnou hodnotu, nebo omezení rozsahu zadávaných hodnot.

Například známka musí být v rozsahu 1 až 5, jiné zadání je zjevně nesmyslné.

Zvláštním typem integritního omezení je unikátnost hodnot. Obvykle je vyžadována při aplikaci "tzv. primárního klíče". Tj. například ID záznamu, které je pro každý záznam unikátní.

Dalším zvláštním typem integritního omezení je tzv. referenční integrita. Pokud z pole v tabulce vede odkaz do jiné tabulky, musí data, na která je odkazováno opravdu existovat.

Page 24: „Úvod do databázových systémů“

24.

Úvod do databázových systémů

Pojmy, se kterými se potkáme v relačních databázích

Primární klíčPrimární klíč zajišťuje stav, kdy je každý řádek tabulky jednoznačně

identifikovaný. Nejlepší je používat nějaký identifikátor (ID), nebo údaj, který řádek identifikuje. Není možné mít v tabulce dva řádky se stejnou hodnotou v primárním klíči.

Vlastní klíčKlíč, který je vytvořen na vlastní tabulce.

Cizí klíčKlíč, který je v cizí tabulce a je to odkaz z hlavní tabulky.

Page 25: „Úvod do databázových systémů“

25.

Úvod do databázových systémů

Pojmy, se kterými se potkáme v relačních databázích

Transakce

Transakce je operace, která se provede jako celek, nebo se neprovede vůbec a je odrolována. To je velmi důležitá vlastnost, pokud nedojde k potvrzení celé akce, je akce jakoby odmazána a data vrácena zpět z tzv. Rollback segmentu databáze.

Page 26: „Úvod do databázových systémů“

26.

Úvod do databázových systémů

Jak správně navrhnout databázi?

1. Zjištění požadavků od zadavatele (nejlépe zadavatelský list, nebo poznámky), pochopení požadavků. (fáze analýzy)

2. Nalezení entit, jejich vlastností a znázornění do E-R diagramu. (fáze návrhu)

3. Do E-R diagramu znázornit vztahy mezi entitami. (fáze návrhu)4. Převedení do vhodného databázového prostředí (ORACLE, MS

ACCESS atd.). (implementace návrhu)5. Tvorba dotazů na data, která zajímají zákazníka. (implementace

návrhu)6. Tvorba sestav z dotazů, které jsme si na základě požadavků

zákazníka definovali. (implementace návrhu)7. Údržba databázového systému, administrace atd. (rutinní provoz)