Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
8 Výpočetní technika Ing. Jan Popelka, Ph.D. odborný asistent
8 Výpočetní technika Ing. Jan Popelka, Ph.D. odborný asistent katedra informatiky a geoinformatiky Univerzita Jana Evangelisty Purkyně v Ústí nad Labem WWW: Jan Popelka
2
MS Access – 1. přednáška Databáze Návrh databáze Tabulka
Výpočetní technika 2006 MS Access – 1. přednáška Databáze Návrh databáze Tabulka Jan Popelka
3
MS Access – Databáze Databáze Lidé mají potřebu evidovat a shromažďovat informace už odpradávna. Celá dnešní moderní společnost je postavena na databázových systémech od evidence občanů, přes zdravotnictví, hospodářství, školství, až po letectví, výzkum nebo síť mobilních telefonů.
4
MS Access – Databáze Databázi si lze představit jako soubor dat, který slouží pro popis reálného světa. evidence školní knihovny sklad chemikálií evidence studentů telefonní hovory
5
MS Access – Databáze Entitou rozumíme prvek reálného světa
člověk stroj vyučovaný předmět město Entita je popsána nějakými charakteristikami (vlastnostmi).
6
MS Access – Databáze Vlastnosti entit se většinou označují jako atributy. Pro entitu zaměstnanec lze pozorovat např.: jméno příjmení stav plat dosažené vzdělání
7
MS Access – Databáze Databáze: evidence zaměstnanců UJEP Entita: zaměstnanec Atributy: číslo zaměstnance, jméno, příjmení, rodné číslo, titul, pozice, fotografie, fakulta, katedra, telefon, Databáze: evidence hokejistů HC Chemopetrol Entita: hokejista Atributy: jméno, příjmení, post, narozen, výška, váha, číslo dresu, fotografie, 1.utkání, 1. branka, 1.asistence
8
MS Access – Databáze Schéma databáze se třemi tabulkami a vazbami
Tabulka (entita) Tabulka (entita) Databázový záznam Databázový záznam vazba (relace) vazba (relace) vazba (relace) Tabulka (entita) Databázový záznam
9
MS Access – Databáze Je-li databáze tvořena jen jedinou tabulkou (entitou), pak je podobná seznamu v takové podobě, v jaké jsme s ním pracovali v aplikaci MS Excel. Pro práci s takovou databází lze MS Excel použít. Pokud je tabulek (entit) více, je vhodnější použít databázové aplikace (MS Access, MySQL).
10
MS Access – Databáze Vazby (relace) mezi entitami. Jednotlivé tabulky mají mezi sebou určitý vztah – jsou něčím spojeny. Např. každý student vysoké školy má jedno téma diplomové práce a opačně je jednomu tématu přiřazen jen jeden student. To hovoříme o vazbě typu 1:1. E-R diagram (Entita – Relace) PRÁCE
11
MS Access – Databáze Vazba 1:1 RČ Jméno Příjmení 850521/2569 Petr
PRÁCE RČ Jméno Příjmení 850521/2569 Petr Novák 845103/7456 Jarmila Zelená 811212/5896 Marek Vostrý RČ Téma Vedoucí 850521/2569 Analýza znečištění vod Ing. Jindřich Truc, CSc. 845103/7456 Větrné elektrárny Mgr. Radek Novák 811212/5896 Staré mapy krajiny Ing. Jan Svačina, Ph.D.
12
MS Access – Databáze Vazby (relace) mezi entitami
Dalším typem je vazba 1:N. Např. student zpracovává semestrální práce a může jich mít více, ale konkrétní práce připadá právě jednomu studentovi. Např. student může být ubytován jen na jedné koleji, ale na jedné koleji je více studentů. S. PRÁCE N
13
MS Access – Databáze Vazba 1:N RČ Jméno Příjmení 850521/2569 Petr
S. PRÁCE RČ Jméno Příjmení 850521/2569 Petr Novák 845103/7456 Jarmila Zelená 811212/5896 Marek Vostrý RČ Předmět Práce 850521/2569 1VT Prezentace medvědi 1BOT Herbář 845103/7456 1STAT Analýza biologických dat
14
MS Access – Databáze Vazby (relace) mezi entitami
Posledním typem vazby je M:N. Zde není žádné omezení. Příkladem by mohla být situace, kdy vyučující na vysoké škole přednáší více předmětů a jeden předmět může přednášet zároveň více vyučujících. VYUČUJÍCÍ PŘEDNÁŠÍ
15
MS Access – Databáze Vazba M:N. Vyučující Os. číslo Předměty
PŘEDNÁŠÍ Vazba M:N. Vyučující Os. číslo Předměty Ing. Jan Popelka, Ph.D 921 1STAT 1ZVT Ing. Václav Synek 612 Předmět Vyučující Místo Forma 1STAT 921 Most DS+KS 621 Ústí nad Labem DS 1VT 312 KS
16
MS Access – Databáze Vazby mezi entitami lze detailněji zobrazit pomocí E-R-A diagramu (Entita – Relace – Atribut). Kromě entit a relací obsahuje i atributy (sledované vlastnosti) - vazba 1:N. RČ S. PRÁCE PRÁCE
17
MS Access – Databáze Vazby (relace) mezi entitami
ukázka z databáze v programu MS ACCESS
18
MS Access – Databáze Tvorba „dobře navržených“ tabulek a relací je klíčový a důležitý úkol z hlediska správného dlouhodobého fungování databáze. Pokud bychom v databázovém systému, který již nějakou dobu běží v ostrém provozu, nalezli chybu spočívající ve špatném návrhu databáze, mělo by to nepříjemné důsledky (odstávka systému).
19
MS Access – Databáze Pro práci s databázovými tabulkami je užitečné (ne-li přímo nutné) mít alespoň jeden atribut (sloupec), jehož hodnota bude jednoznačně identifikovat záznam v tabulce. Pokud taková položka nebude příliš velká (např. v počtu bajtů), zvolíme ji za tzv. primární klíč. Např. v tabulce evidence zaměstnanců UJEP za primární klíč zvolit položku ‚osobní číslo' nebo 'rodné číslo' nebo 'číslo OP'.
20
MS Access – Databáze Primární klíč má tu vlastnost, že jeho hodnota je jedinečná, tj. pro žádné dva řádky v tabulce nemůže nastat situace, že by hodnota primárního klíče byla totožná.
21
MS Access – Databáze Databázové systémy většinou umožňují definovat jako primární klíč také kombinaci více atributů, např. dvojici nebo trojici. V takovém případě se mohou některé hodnoty v klíčích opakovat, ale nesmí být shodné žádné n-tice atributů. datum narození + místo narození + jméno + příjmení
22
MS Access – Databáze Normální formy Pojem normálních forem se používá ve spojitosti s dobře navrženými tabulkami. Správně vytvořené tabulky splňují podmínky nazvané základní normální formy.
23
MS Access – Databáze 1. normální forma Nejjednodušší normální forma (1NF) říká, že všechny atributy (vlastnosti) jsou atomické, tj. dále již nedělitelné. Např. tabulka ADRESA má sloupce JMÉNO, PŘÍJMENÍ a BYDLIŠTĚ. JMÉNO PŘÍJMENÍ BYDLIŠTĚ jan novák Ostravská 16, Praha petr nový Svitavská 8, Brno jan nováček Na bradlech 1147, Ostrava 79002
24
MS Access – Databáze 1. normální forma - tabulka ADRESA Pokud bychom z této tabulky chtěli vyhledat všechny pracovníky z určitého města, nešlo by to zjistit přímo a jednoduše. A to proto, že atribut BYDLIŠTĚ není atomický, skládá se z několika částí: ULICE, ČÍSLO, MĚSTO a PSČ. JMÉNO PŘÍJMENÍ BYDLIŠTĚ jan novák Ostravská 16, Praha petr nový Svitavská 8, Brno jan nováček Na bradlech 1147, Ostrava 79002
25
MS Access – Databáze 1. normální forma - tabulka ADRESA
Správný návrh tabulky respektující 1NF bude vypadat následovně: Obecně bychom se měli snažit, aby obsahem jedné databázové položky byla právě jedna hodnota (určitého databázového typu). JMÉNO PŘÍJMENÍ ULICE ČÍSLO MĚSTO PSČ jan novák Ostravská Praha petr nový Svitavská Brno jan nováček Na bradlech Ostrava 79002
26
MS Access – Databáze 2. normální forma
Tabulka splňuje 2NF, pokud splňuje 1NF a navíc každý atribut (vlastnost), který není primárním klíčem je na primárním klíči úplně závislý. To znamená, že se nesmí v řádku tabulky objevit položka, která by byla závislá jen na části primárního klíče nebo byla na klíči zcela nezávislá.
27
MS Access – Databáze 2. normální forma
Při nesplnění 2NF často dochází k redundanci (opakování záznamů). V tomto případě je v tabulce navíc název pracoviště, protože není splněna 2NF (název pracoviště není závislý na čísle zaměstnance, ale na čísle pracoviště). ČÍSLO JMÉNO PŘÍJMENÍ ČÍS_PRAC NÁZEV_PRAC 1 jan novák studovna 2 petr nový centrála 3 jan nováček studovna
28
MS Access – Databáze 2. normální forma
Obecně převedení do tabulky, která již bude splňovat 2NF, znamená rozpad na dvě nebo více tabulek, kde každá už bude splňovat 2NF - dekompozice relačního schématu. Tabulka ZAMĚSTNANEC Tabulka PRACOVIŠTĚ ČÍSLO JMÉNO PŘÍJMENÍ ČÍS_PRAC 1 jan novák 10 2 petr nový 15 3 jan nováček 10 ČÍSLO NÁZEV 10 studovna 15 centrála 20 kotelna
29
MS Access – Tabulka Jednoduchá tabulka popisuje nějakou entitu. Skládá se ze sloupců, kterým říkáme atributy a volíme takové vlastnosti, které nás o dané entitě zajímají. U databáze zaměstnanců UJEP nebudu sledovat majetkové poměry jako je typ bydlení, automobil, vybavení domácnosti atd. Tyto vlastnosti budu sledovat v databázi zákazníků pojišťovny nebo banky.
30
MS Access – Tabulka Datové typy sloupců Při tvorbě tabulky je vhodné uvědomit si jak budou vypadat hodnoty jednotlivých atributů. Do samotné tabulky pak již nebude možné vložit hodnotu, která neodpovídá datovému typu. Většina položek bude obyčejný text (jméno, příjmení, titul), číslo domu a PSČ budou celá kladná čísla.
31
MS Access – Datové typy Datové typy sloupců v jazyce SQL INTEGER celé číslo <-231 až 231> SMALLINT celé číslo < až > NUMERIC(m,n) desetinné číslo (m je počet platných číslic a n je počet desetinných míst) FLOAT(n) reálné číslo (max. 38 desetinných míst, kde n je počet platných číslic)
32
MS Access – Datové typy Datové typy sloupců v jazyce SQL CHAR(n) řetězec znaků do max. délky 255 VARCHAR(n) řetězec znaků proměnné délky (vhodné pro texty, n udává počet znaků) DATE datum TIME čas
33
MS Access – Datové typy Datové typy sloupců v MS Access Text Text a čísla, s nimiž nebudou prováděny výpočty. Maximálně 255 znaků. Memo Dlouhý text nebo kombinace textu a čísel. Maximálně znaků. Číslo Čísla (zejména, jsou-li s nimi prováděny další výpočty).
34
MS Access – Datové typy Datové typy sloupců v MS Access Datum/Čas Kalendářní datum a čas. Zabraňuje vložení neexistujícího data. Umožňuje výpočty (rozdílem dvou dat je počet dní mezi daty). Měna Číslo s peněžním symbolem. Ano/Ne Pole obsahující pouze jednu ze dvou hodnot (Ano/Ne, True/False nebo Zapnuto/Vypnuto).
35
MS Access – Datové typy Datové typy sloupců v MS Access Automatické s diferencí 1 nebo náhodné číslo číslo. Číslo přiřazuje Access vždy při přidání nového záznamu do tabulky. Objekt Objekt (například tabulka Excelu, OLE dokument Wordu, grafika, zvuky nebo jiná binární data) propojený nebo vložený do tabulky programu Access - maximálně 1 gigabyte (omezeno volným místem na disku).
36
MS Access – Datové typy Hypertextový odkaz Text nebo kombinace textu a čísel uložená jako text a používaná jako adresa odkazu. Adresa odkazu se může skládat až ze čtyř částí: - zobrazený text: text, který je zobrazen v poli nebo ovládacím prvku, - adresa: cesta k souboru nebo ke stránce (URL), - podadresa: pozice uvnitř souboru nebo stránky, - text zobrazovaný ve žlutém rámečku při ukázání myší nad obsah pole.
37
MS Access – Datové typy Podtypy typu Číslo Celé číslo < ; > Dlouhé celé číslo <-2,1*109 ; 2,1*109> Jednoduchá přesnost <-3,4*1038 ; 3,4*1038> Dvojitá přesnost <-1,8*10308 ; 1,8*10308> Desetinné číslo <-1,0*1028 ; 1,0*1028> Volba vhodného datového typu snižuje nároky na velikost databáze, ale také urychluje práci Accessu.
38
MS Access – Datové typy Příklad: Databáze zaměstnanců UJEP v MS Access. Jaké datové typy budou nejvhodnější? Zaměstnanecké číslo Jméno, Příjmení Narozen telefon fotografie mzda pracoviště slovní hodnocení vedoucího Celé číslo Text Datum Text, celé číslo Objekt OLE Celé číslo Text, celé číslo Memo
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.