Modul 5
Použití databází
Objekty databáze Aplikace Access používá 4 různé druhy objektů, které jsou součástí databáze. Objekt Tabulka Formulář Sestava Dotaz
Hlavní funkce Ukládá data. Zobrazuje data pro zadávání nebo prohlížení. Zobrazuje data pro tisk, zobrazení a interakci. Načítá data, která určíte.
Poznámka Tabulky často souvisí s jinými tabulkami. Data ve formuláři jsou vybírána z jedné nebo více tabulek nebo dotazů. Data v sestavě jsou vybírána z jedné nebo více tabulek. Data v dotazu pocházejí z jedné nebo více tabulek.
Postupně se naučíme pracovat se všemi objekty databáze. Začneme tabulkou, protože to je základní objekt databáze. Bez tabulky a dat v nich jsou ostatní objekty zbytečné.
Tabulka Vytvoření nové tabulky Vytvoření nové tabulky není vůbec jednoduchá věc. Tedy z pohledu návrhu struktury tabulky. Když ale už budeme vědět jak bude tabulka vypadat, z jakých polí se bude skládat, jaká data do ni budeme ukládat a s jakou další tabulkou bude v nějakém typu relace, její vytvoření bude velice jednoduché. Budeme se tedy chvilku zabývat tím, jakou databázi vytvoříme. Už od začátku manuálu si dáváme různé příklady k pochopení různých pojmů databáze v podobě ordinace obvodního lékaře. Budeme v tom tedy pokračovat. V našich příkladech jsme si ukázali jen část problematiky databáze lékaře. Teď ale navrhneme komplexnější a fungující databázi. K tomu budeme potřebovat vědět, jaké typy dat obecně budeme potřebovat, rozdělíme je do tabulek a potom si navrhneme jednotlivé tabulky. Jak už jsme si říkali toto je velice důležitá část, protože spatný návrh tabulky nám muže později, když už budeme mít zaběhnutou ordinaci, minimalizovat problémy. Změna struktury tabulek za plného chodu ordinace nebude vůbec jednoduchá, někdy dokonce neuskutečnitelná. Takže jaká data budeme evidovat? Určitě budeme mít tabulky, kde budeme evidovat informace o pacientech. To bude tabulka PACIENT. Dále pacient bude chodit na jednotlivé návštěvy. Preventivní, na očkovaní, nebo urgentní, kdy bude nemocný. Tyto události budeme evidovat v tabulce, kterou pojmenujeme NÁVŠTĚVA. A lékař bude předepisovat recepty, které bude muset vykázat pojišťovnám. Tady budeme muset vytvořit tabulku s názvem RECEPT. Pro názornost nám to bude stačit. Znovu ale upozorníme na to, že reálná ordinace by fungovala mnohem složitěji. Např. nám chybí dodavatelé, kteří budou dodávat např. očkovací vakcíny, určitě nám chybí nějaký propracovanější objednávací kalendář pro evidenci plánovaných a provedených očkováních, nebo preventivních prohlídek. Dále by se určitě dalo uvažovat nad organizací čekárny, kdy by si lékař dle závažnosti stavu pacienta mohl volat pacienty do ordinace. Chybí nám příkazy pro přepravu pacienta do nemocnice, různé poukazy na rehabilitace, lázně, či zdravotnicky materiál, evidenci laboratorních vyšetření a takto můžeme pokračovat dál ve výčtu tabulek, které bychom mohli v naší databázi mít. Pro zkrácení již nebudeme uvádět v další častí textu (pokud to nebude opravdu nutné) další rozšíření databáze pro naší ordinaci.
19
Modul 5
Použití databází
Dalším úkolem bude navrhnout relace mezi tabulkami. Mezi tabulkami PACIENT a NÁVŠTĚVA bude relace typu 1:N, kdy jeden pacient bude mít přidělených více záznamů z tabulky NÁVŠTĚVA. A mezi tabulkami NÁVŠTĚVA a RECEPT bude taky relace typu 1:N, protože během jedné návštěvy může lékař vypsat více receptů. A protože lékař bude chtít vidět rychlý přehled, jaké léky předepisoval v minulosti danému pacientovy bez ohledu na návštěvy, vytvoříme ještě relaci mezi pacientem a receptem. Taky typu 1:N. Tak tabulky a relace mezi nimi jsme si nadefinovali a můžeme se vrhnout na vlastní návrh jednotlivých tabulek. Poznámka: Název může obsahovat maximálně 64 znaků (písmen a číslic), včetně mezer.
Tabulka PACIENT o ID pacienta Každá tabulka musí mít jedno (nejlépe první) pole, které bude jednoznačně identifikovat daný záznam. Tento identifikátor se používá pro vytvoření relací. Pro pacienta by tímto identifikátorem mohlo být rodné číslo, ale je tu několik argumentů proč nepoužívat žádné pole, které nese konkrétní informaci o objektu. Jeden za všechny: rodné číslo zadává člověk a už jen z toho důvodů není zajištěna jednoznačnost takovéhoto identifikátoru. o Jméno o Příjmení Informace o jménech a příjmeních o Rodné číslo Důležitá informace pro další použití – komunikace s pojišťovnami, rodné číslo může být na receptech atd. o Datum narození Sice se dá určit z rodného čísla, ale například cizinci nemusí mít rodné číslo odvozené od data narození o Pojišťovna Jednotlivé výkony si musíme vykázat na pojišťovnu, aby nám je proplatila o Pohlaví o Poznámka Zde si může lékař napsat k pacientovi poznámky, například o alergiích, prodělaných nemocech, chronických nemocech atd. Tabulka NÁVŠTĚVA o ID návštěvy Platí stejně jako u tabulky PACIENT. Mělo by to být nejlépe automaticky generované číslo, aby se vyloučila lidská chyba. o ID pacienta Relační pole, kde bude odkaz na konkrétní záznam pacienta, který danou návštěvu absolvoval o Datum návštěvy o Subjektivný nález Je to informace o stavu pacienta dle jeho vlastních slov. Je to vlastně odpověď na otázku: Tak pane Mrkvičko, co vás trápí? o Objektivní nález Informace o stavu pacienta, které zjistí lékař. o Teplota Číselná informace o tělesné teplotě pacienta v době návštěvy o Závěr 20
Modul 5
Použití databází
Informace o postupu léčby o Výkony Úkony které lékař vykonal, aby je mohl vykázat na pojišťovnu o Diagnóza Určení diagnózy kódem – lékař to musí uvádět do výkazu pro pojišťovnu o Datum kontroly V případě, že je nutná kontrola, vyplní lékař datum kontroly Tabulka RECEPT o ID receptu Automaticky generované číslo pro jednoznačný identifikátor záznamu o ID pacienta ID pacienta na kterého je vystaven recept – je to relační pole o ID návštěvy ID návštěvy na které byl daný recept vystaven o Datum platnosti Datum dokdy platí recept, datum vystavení je stejné jako datum návštěvy a protože je mezi tabulkou RECEPT a NAVSTEVA vytvořená relace nebude datum vystavení duplikovat, abychom zabránili duplicitě dat. To samé platí o rodném čísle, pojišťovně a data narození pacienta, protože tyto údaje musí být na receptu vyplněné o Lék Název předepsaného léku o Dávkování Poznámka o dávkování o Lék2 o Dávkovaní2 Na jednom receptu můžou být dva léky o Poznámka Poznámka lékaře k danému receptu
Každému z daných polí musíme určit jeho datový typ. Tedy, jaký druh informace bude v daném poli uložen. Jestli to bude text, číslo, datumová položka, automaticky generované číslo atd. V následující tabulce si ukážeme, jaké datové typy nám dává k dispozici aplikace Access a popíšeme si jejich vlastnosti, které budeme pro správné nadefinování tabulky potřebovat.
21
Modul 5
Použití databází
Datové typy Datový typ Text
Memo
Číslo
Datum a čas
Měna Automatické číslo
Ano/Ne Objekt OLE Příloha
Hypertextový odkaz
Použití Používá se pro alfanumerické znaky, jako je text nebo text a čísla, které se nepoužívají při výpočtech (například kód produktu). Používá se pro text delší než 255 znaků nebo pro text s formátováním RTF. Příkladem mohou být poznámky, delší popisy a odstavce s formátováním, jako je tučné písmo nebo kurzíva. Pomocí vlastnosti Formát textu u pole typu Memo lze určit, zda pole podporuje formátovaný text. Nastavením vlastnosti Pouze přidat u pole typu Memo na hodnotu Ano určíte, že se mají zachovat předchozí verze hodnoty pole v případě její změny. Slouží pro ukládání číselných hodnot (celých čísel nebo zlomků), které se budou používat při výpočtech. Neužívá se pro peněžní hodnoty. Poznámka Pro peněžní hodnoty použijte datový typ Měna. Slouží pro ukládání hodnot data a času. Všimněte si, že každá uložená hodnota zahrnuje část představující datum i část představující čas. Slouží pro ukládání peněžních hodnot (měna). Používá se pro generování jedinečných hodnot, které lze použít jako primární klíč, jenž aplikace Access vloží při přidání záznamu. Všimněte si, že pole typu Automatické číslo může být navyšováno o jednu či o zadaný přírůstek, nebo přiřazováno náhodně. Používá se pro logické hodnoty: Ano/Ne, Pravda/Nepravda nebo Zapnuto/Vypnuto. Slouží pro ukládání objektů OLE z jiných aplikací systému Microsoft Windows. Slouží pro ukládání binárních souborů (tzn. souborů, které nelze číst pomocí textového editoru), jako jsou digitální obrázky (fotografie a grafika), nebo souborů vytvořených pomocí jiných produktů sady Microsoft Office. Pomocí pole Příloha můžete k záznamu připojit více než jeden soubor. Používá se pro uložení hypertextových odkazů, které poskytují přístup jediným klepnutím k webovým stránkám prostřednictvím adresy URL (Uniform Resource Locator) nebo k souborům prostřednictvím názvu ve formátu UNC (Universal Naming Convention). Můžete se také připojit k objektům aplikace Access, uloženým v databázi.
22
Velikost Až 255 znaků Až 1 Gigabajt znaků nebo 2 Gigabajty úložiště (2 bajty na znak), z nichž můžete zobrazit 65 535 znaků v jednom ovládacím prvku. Poznámka Maximální velikost pro databázový soubor aplikace Office Access 2007 je 2 gigabajty.
1, 2, 4, 8 nebo 12 bajtů (16 bajtů při použití pro ID replikace) Další informace naleznete v části Velikost pole pro pole typu Číslo v přehledové tabulce vlastností pole. 8 bajtů
8 bajtů 4 bajty (16 bajtů při použití pro ID replikace)
1 bit (0,125 bajtu) Až 1 Gigabajt Pro komprimované přílohy 2 GB. Pro nekomprimované přílohy přibližně 700 kB, v závislosti na míře komprimovatelnosti přílohy. Poznámka: Maximální velikost pro databázový soubor aplikace Office Access 2007 je 2 Gigabajty.
Až 1 Gigabajt znaků nebo 2 Gigabajty úložiště (2 bajty na znak), z nichž můžete zobrazit 65 535 znaků v jednom ovládacím prvku. Poznámka: Maximální velikost pro databázový soubor aplikace Office Access 2007 je 2 gigabajty.
Modul 5
Použití databází
Průvodce vyhledáváním
Slouží ke spuštění Průvodce vyhledáním, abyste mohli vytvořit pole se seznamem pro vyhledávání hodnoty v jiné tabulce, dotazu nebo seznamu hodnot. Všimněte si, že Průvodce vyhledáváním nepředstavuje skutečný datový typ.
Je-li vyhledávací pole vázáno na tabulku nebo dotaz, velikost vázaného sloupce. Není-li vyhledávací pole vázáno na jiný sloupec (a obsahuje-li seznam hodnot), velikost pole typu Text použitého k uložení seznamu.
Vlastnosti polí Každé pole má ještě svoje vlastnosti, kterými se daný datový typ zpřesňuje: Vlastnost pole Velikost pole Formát
Počet desetinných míst Nové hodnoty Vstupní maska
Titulek Výchozí hodnota
Ověřovací pravidlo
Ověřovací text
Je nutno zadat
Povolit délku
nulovou
Datové typy Text Číslo Automatické číslo Text Memo Číslo Měna Datum a čas Automatické číslo Ano/Ne Hypertextový odkaz Číslo Měna Automatické číslo
Text Číslo Datum a čas Měna Všechny datové typy Text Memo Číslo Měna Datum a čas Ano/Ne Hypertextový odkaz Text Memo Číslo Měna Datum a čas Ano/Ne Hypertextový odkaz Číslo Měna Datum a čas Ano/Ne Hypertextový odkaz Všechny datové typy kromě typu Automatické číslo Text, Memo, Hypertextový odkaz
Účel Nastavení maximální velikosti dat uložených jako datový typ Text, Číslo nebo Automatické číslo. Pod tabulkou je text s upřesněním Přizpůsobení výchozího vzhledu pole při zobrazení nebo vytištění. Pod tabulkou je text s upřesněním
Zadání počtu desetinných míst, který má být použit při zobrazování čísel. Nastavení, zda se při přidání nového záznamu hodnota pole typu Automatické číslo postupně navyšuje, nebo zda je přiřazena náhodná hodnota. Zobrazení znaků pro úpravy pro usnadnění zadávání dat.
Nastavení textu zobrazeného ve výchozím nastavení u formulářů, sestav a dotazů. Automatické přiřazení zadané hodnoty k poli při přidání nového záznamu.
Zadání výrazu, který musí být pravdivý, aby se do daného pole přidala hodnota nebo se v něm změnila.
Zadejte text, který se zobrazí, pokud hodnota zadaná do tohoto pole poruší výraz v poli Ověřovací pravidlo.
Vynucení, aby toto pole obsahovalo hodnotu v každém záznamu. Povolení zadání (nastavením na hodnotu Ano) řetězce s nulovou délkou ("") v poli typu Text nebo Memo.
23
Modul 5
Použití databází
Indexováno
Komprese Unicode
kódu
Inteligentní značky
Pouze přidat
Text Memo Číslo Měna Datum a čas Ano/Ne Hypertextový odkaz Automatické číslo Text Memo Hypertextový odkaz Text Memo Číslo Měna Datum a čas Hypertextový odkaz Automatické číslo Memo Hypertextový odkaz
Formát textu
Memo
Zarovnání textu
Všechny datové typy kromě typu Příloha Datum a čas
Zobrazit data
výběr
Urychlení přístupu pro čtení k datům v tomto poli vytvořením a použitím indexu. Poznámka: Pole typu Memo a Hypertextový odkaz podporují indexy pouze u prvních 255 znaků u pole. Důležité: Index u pole způsobí, že operace přidání, odstranění a aktualizace budou trvat déle, protože index musí být aktualizován, aby odrážel všechny změny. Komprimuje data v tomto poli, pokud je uloženo méně než 4 096 znaků (u pole Text je tomu tak vždy). Nemá žádný účinek, pokud je uloženo více než 4 096 znaků. Připojí inteligentní značku k poli.
Po nastavení této vlastnosti na hodnotu Ano se bude zaznamenávat historie hodnot polí. Upozornění: Změnou této vlastnosti na hodnotu Ne historii hodnot pole vymažete. Vyberete-li možnost Formátovaný text, budou se data v poli ukládat ve formátu HTML a bude povolen formátovaný text. Vyberete-li možnost Prostý text, uloží se pouze text. Určení výchozího zarovnání textu v rámci ovládacího prvku. Určení, zda se zobrazí ovládací prvek Výběr data (ovládací prvek Kalendář), když uživatelé upravují hodnotu pole. Poznámka: Jestliže u pole Datum a čas použijete vstupní masku, nebude ovládací prvek Výběr data k dispozici bez ohledu na nastavení této vlastnosti.
Upřesnění pro vlastnost pole Velikost pole: Pro datový typ Text zadejte hodnotu od 1 do 255. Textová pole mohou obsahovat 1 až 255 znaků. Pro větší textová pole použijte datový typ Memo. U dat v poli Text nerezervuje aplikace Access žádné místo nad rámec toho, co je potřeba pro uložení samotných hodnot. Vlastnost Velikost pole představuje maximální velikost hodnoty pole.
Pro datový typ Číslo vyberte jednu z následujících možností:
Bajt: Pro celá čísla v rozsahu 0 až 255. V úložišti zabírá 1 bajt. Celé číslo: Pro celá čísla v rozsahu -32 768 až +32 767. V úložišti zabírá 2 bajty. Dlouhé celé číslo: Pro celá čísla v rozsahu -2 147 483 648 až +2 147 483 647. V úložišti zabírá 4bajty. Tip: Datový typ Dlouhé celé číslo použijte, pokud vytváříte cizí klíč pro ustavení relace pole s polem primárního klíče typu Automatické číslo v jiné tabulce. Jednoduchá přesnost: Pro číselné hodnoty s plovoucí desetinnou čárkou v rozsahu -3,4 x 1038 až +3,4 x 1038 a až se 7 platnými číslicemi. V úložišti zabírá 4 bajty. Dvojitá přesnost: Pro číselné hodnoty s plovoucí desetinnou čárkou v rozsahu -1,797 x 10308 až +1,797 x 10308 a až s 15 platnými číslicemi. V úložišti zabírá 8 bajtů. 24
Modul 5
Použití databází
ID replikace: Pro uložení globálně jedinečného identifikátoru, který je požadován pro replikaci. V úložišti zabírá 16 bajtů. Nezapomeňte, že replikace není podporována ve formátu souboru ACCDB. Desetinné číslo: Pro číselné hodnoty v rozsahu -9,999... x 1027 až +9,999... x 1027. V úložišti zabírá 12 bajtů.
Pro datový typ Automatické číslo vyberte jednu z následujících možností:
Dlouhé celé číslo: Pro jedinečné číselné hodnoty v rozsahu 1 až +2 147 483 648, pokud je vlastnost pole Nové hodnoty nastavena na hodnotu Přírůstek, a v rozsahu -2 147 483 648 až +2 147 483 647, pokud je vlastnost pole Nové hodnoty nastavena na hodnotu Náhodný. V úložišti zabírá 4 bajty. ID replikace: Pro uložení globálně jedinečného identifikátoru požadovaného pro replikaci. V úložišti zabírá 16 bajtů. Nezapomeňte, že replikace není podporována ve formátu souboru ACCDB.
Upřesnění pro vlastnost pole Formát: Pro datový typ Text Pro pole typu Text můžete definovat vlastní formát. Pro datový typ číslo vyberte jednu z následujících možností:
Obecné číslo: Zobrazí číslo, jak bylo zadáno. o Například 3456,789 se zobrazí jako 3456,789. Měna: Zobrazí číslo s oddělovačem tisíců a použije místní a jazykové nastavení v Ovládacích panelech pro záporné částky, pro symboly označující desetinnou čárku a měnu a pro počet desetinných míst. o Například 3456,789 se zobrazí jako 3 456,79 Kč. Euro: Zobrazí číslo se symbolem měny euro bez ohledu na symbol určený v místním a jazykovém nastavení. o Například 3456,789 se zobrazí jako €3 456,79 a 3 456 789 se změní na 3 456 79€. Pevný: Zobrazí alespoň jednu číslici a použije místní a jazykové nastavení v Ovládacích panelech pro záporné částky, pro symboly označující desetinnou čárku a měnu a pro počet desetinných míst. o Například 3456,789 se zobrazí jako 3456,79. Standardní: Zobrazí číslo s oddělovačem tisíců a použije místní a jazykové nastavení v Ovládacích panelech pro záporné částky, pro symbol označující desetinnou čárku a pro počet desetinných míst. V tomto formátu se nezobrazí symbol měny. o Například 3456,789 se zobrazí jako 3 456,79. Procento: Vynásobí hodnotu hodnotou 100 a zobrazí číslo se znakem procenta na konci. Použije místní a jazykové nastavení v Ovládacích panelech pro záporné částky, pro symbol označující desetinnou čárku a pro počet desetinných míst. o Například 0,3456 se zobrazí jako 35 %. Matematický: Zobrazí hodnotu ve standardním exponenciálním zápisu. o Například 3456,789 se zobrazí jako 3,46E+03.
Pro datový typ Datum a čas vyberte jeden z následujících předdefinovaných formátů zobrazení:
Datum (obecné): Zobrazí hodnotu jako kombinaci nastavení Datum (krátké) a Čas (dlouhý). 25
Modul 5
Použití databází
Datum (dlouhé): Zobrazí hodnotu podle nastavení Dlouhý formát data v okně Místní a jazykové nastavení v Ovládacích panelech. Datum (střední): Zobrazí hodnotu ve formátu dd-mmm-rr (například 14-VII-06). Datum (krátké): Zobrazí hodnotu podle nastavení Krátký formát data v okně Místní a jazykové nastavení v Ovládacích panelech. Čas (dlouhý): Zobrazí hodnotu podle nastavení Čas v okně Místní a jazykové nastavení v Ovládacích panelech. Čas (střední): Zobrazí hodnotu ve formátu HH:MM PM, kde HH představuje hodiny, MM představuje minuty a PM představuje položku dop. nebo odp. Hodnota hodin může být v rozsahu od 1 do 12. Hodnota minut může být v rozsahu od 0 do 59. Čas (krátký): Zobrazí hodnotu ve formátu HH:MM, kde HH představuje hodiny a MM představuje minuty. Hodnota hodin může být v rozsahu od 0 do 23 a minut od 0 do 59.
Pro datový typ Ano/Ne vyberte jednu z následujících možností:
Pravda/Nepravda: Zobrazí hodnotu jako Pravda nebo Nepravda. Ano/Ne: Zobrazí hodnotu jako Ano nebo Ne. Zapnuto/Vypnuto: Zobrazí hodnotu jako Zapnuto nebo Vypnuto. Poznámka o Pravda=Ano=Zapnuto o Nepravda=Ne=Vypnuto
Návrh datových typů pro tabulky naší ordinace:
Tabulka PACIENT o ID pacienta o Jméno o Příjmení o Rodné číslo o Datum narození o Pojišťovna o Pohlaví o Poznámka Tabulka NAVSTEVA o ID návštěvy o ID pacienta o Datum návštěvy o Subjektivný nález o Objektivní nález o Teplota o Závěr o Výkony o Diagnóza o Datum kontroly Tabulka RECEPT o ID receptu o ID pacienta o ID návštěvy o Datum platnosti o Lék
Automatické číslo Text Text Text Datum a čas Text Text Memo Automatické číslo Dlouhé číslo Datum a čas Memo Memo Číslo Memo Text Text Datum a čas Automatické číslo Dlouhé číslo Dlouhé číslo Datum a čas Text 26
Modul 5
Použití databází o o o o
Dávkování Lek2 Davkovani2 Poznámka
Text Text Text Memo
27
Modul 5
Použití databází
Vytvoření nové tabulky Dle návodu popsaného výš vytvoříme novou databázi, kterou si pojmenujeme Ordinace. Po vytvoření nové databáze se dostaneme do následujícího stavu, resp. Okna. Všimněte si název databáze v titulku okna.
A do ní si založíme tři nové tabulky. Protože vytváříme tabulku do nově založené databáze, zobrazilo se rovnou vytvoření nové tabulky s názvem Tabulka1 v zobrazení datového listu. Postup pro přejmenování a vytvoření nové tabulky v nové databázi bude následující: Pro jednoduchost se nejdříve přepneme do návrhového zobrazení: Na pásu karet v záložce Domů, nebo Datový list v kartě Zobrazení vybereme Návrhové zobrazení.
Návrhové zobrazení se nás zeptá na název nové tabulky. Doplníme název tabulky PACIENT.
Po stlačení tlačítka OK se dostaneme do Návrhového zobrazení tabulky: 28
Modul 5
Použití databází
1) V části 1 budeme do řádku postupně doplňovat názvy polí tabulky a datový typ polí 2) V části 2 budeme definovat podrobnější vlastnosti daného pole tabulky. Pozor upravujeme vlastnost pole toho, na kterém máme umístněn kurzor, je teda zvýrazněno. (Je to velice častá chyba, že se povede upravit vlastnost úplné jiného pole)
Doplníme tedy jednotlivé pole dle našeho připraveného plánu:
29
Modul 5
Použití databází
Když budeme na každý řádek dopisovat postupné názvy jednotlivých polí, jako předvolená hodnota datového typu (kromě první položky, ta je vždy Automatické číslo) se nám doplní typ Text. U položek Datum narození a Poznámka musíme datový typ změnit. A to tak, že ve sloupci datový typ vybereme z rozbalovacího seznamu správný datový typ, tak jak je to naznačeno na obrázku. Další věc, kterou se musíme zabývat, jsou vlastnosti jednotlivých polí. Například je určitě zbytečné aby nám položka Rodné číslo zabírala v databázi maximální možný počet bajtů textové položky, což je 255 znaků. Rodné číslo našince má jedenáct znaků. Jak jsme ale už v návrhu naší databáze naznačili musíme počítat i s cizinci a tak uděláme na rodné číslo rezervu. Rozumné číslo bude 30 znaků.
30
Modul 5
Použití databází
Změnu provedeme: 1) označíme pole Rodné číslo 2) Ve vlastnostech pole na řádku Velikost pole přepíšeme předvolenou hodnotu 255 znaků na 30 znaků
Obdobně můžeme nastavit vlastnost Titulek pole. Stačí do řádku s vlastnosti Titulek pole vepsat jiný text než je název pole a ve všech výstupech (formuláře a tiskové sestavy) se bude místo názvy pole zobrazovat Titulek pole. Další vlastnosti pole jsou vysvětleny v tabulce, kde jsme si popsali všechny vlastnosti pole. Pro názornost, dáme pro rodné číslo Titulek Rodné číslo pacienta. Další vlastnosti popsané v již zmíněné tabulce budeme doplňovat výše uvedeným způsobem.
Uložení tabulky Po dokončení návrhu, nebo změn ve struktuře tabulky ji musíme uložit, obdobně jako dokument Word, nebo sešit Excel. V databázích je ale rozdíl v tom, že máme sice otevřený jeden datový soubor s názvem Ordinace, ale uložením tabulky uložíme skutečně jen tento jeden objekt databáze a sice tabulku nebo jiný objekt. Jak nato? Máme víc možnosti: 1) Klikněte na tlačítko Office a potom klikněte na příkaz Uložit 2) Stiskněte kombinaci kláves CTRL+S 3) Klepněte pravým tlačítkem myši na kartu dokumentu dané tabulky a v místní nabídce klepněte na příkaz Uložit. 4) Klepněte na tlačítko Uložit na panelu nástrojů Rychlý přístup.
Ukládáte-li tabulku poprvé, zadejte název tabulky a klepněte na tlačítko OK.
31
Modul 5
Použití databází
Primární klíč Jak jsme si již říkali, každý záznam tabulky musí být nějakým způsobem jednoznačně identifikován. K tomuto účelu slouží takzvaný identifikátor (ID). Tabulce ale musím v návrhu říct, které pole bude tímto identifikačním údajem, tedy primárním klíčem tabulky. Toto pole nikdy nesmí být prázdné a jak už jsme si řekli, každý záznam musí mít v tomto poli jedinečnou neopakující se hodnotu. Access používá toto pole i k určení relaci mezi tabulkami. Nastavení nebo změna primárního klíče
1) Vyberte pole, které bude představovat primární klíč (variantně je možné označit víc polí stiskněte a podržte klávesu CTRL a poté klepněte na odpovídající řádky.) 2) Na kartě Návrh klepněte ve skupině Nástroje na příkaz Primární klíč. 3) Ikonka malého klíče se zobrazí u položky, na které je aktuálně nastaven primární klíč.
Pro změnu primárního klíče na jinou položku stačí, když označíte pole které má být novým primárním klíčem a nastavíte primární klíč dle kroku číslo 2.
32
Modul 5
Použití databází
Vytvoření nové tabulky do existující databáze K tabulce PACIENT jsme přišli docela jednoduše, protože se založením nové databáze se nám hned vytvořila první tabulka. Je to proto, že tabulka je základním objektem databáze a bez tabulky není možné s databází pracovat. My budeme ale potřebovat ještě přidat další tabulky, jako je NÁVŠTĚVA a RECEPT. Postup pro vytvoření nové tabulky je následující:
Na záložce pásu karet Vytvořit v části Tabulky máme dvě možnosti. Kliknout na tlačítko Tabulka, která nás přepne do datového listu a nebo použijeme tlačítko Návrh tabulky, které nás rovnou přepne do Návrhového zobrazení. Vytvoří se tabulka se jménem Tabulka1. Při uložení tabulky nás aplikace Access vyzve pro zadaní názvu tabulky. Zadáme NÁVŠTĚVA a máme hotovo. Další postup pro definovaní tabulky je již stejný jako v případě tabulky PACIENT. Postup zopakujeme i s tabulkou RECEPT. Zastavíme se ale u jednotlivých drobností, které si zasluhují trochu víc pozornosti: 1) Při zadávaní vlastností pro Datum návštěvy si zvolíme ve vlastnosti formát datum (krátké) 2) U vlastností Teplota zadáme datový typ Číslo a jako velikost pole zadáme dlouhé cele číslo 3) Pro formát pole Datum kontroly zadáme datum (obecné) a to z toho důvodu, že si pacienta můžeme tímto objednat za pomoci tohoto formátu na konkrétní čas. 4) U obou tabulek nezapomeňte určit primární klíč tabulky. Pokud tak neučiníte, aplikace Access vás k tomu vyzve. Potom máte dvě možnosti, bud si necháte založit primární klíč aplikací automaticky (v tom případě ale ztratíme naše ID tabulky jako identifikátor), a nebo to uděláte ručně, což je samozřejmě lepší, protože máte větší kontrolu nad definicí svých tabulek.
Poznámka: Každé číslo, které určuje relační vztah k jiné tabulce, musí mít formát Dlouhé celé číslo. Výsledek našeho snažení bude vypadat asi takto:
33
Modul 5
Použití databází
Přidávání, editace a odstraňovaní záznamu v tabulce Po definování tabulek jsme pořád v režimu zobrazení návrhu tabulky. Do režimu datového se dostaneme stlačením tlačítka Zobrazení na kartě návrh.
34
Modul 5
Použití databází
Nebo stlačením prvního zleva tlačítka na stavovém řádku.
Přepnutí do datového zobrazení musíme provést pro každou tabulku zvlášť. Naše hlavní tabulka je tabulka PACIENT, takže začneme naplňovat záznamy pravě v této tabulce.
Vytvoření nového záznamu V datovém zobrazení je situace následující:
1) Záložky kde se můžeme přepínat mezi jednotlivými tabulkami. 2) Jednotlivé sloupce reprezentující pole tabulky 3) Zde máme možnost zadat nové pole do tabulky (doporučujeme se přepnout do návrhového zobrazení a tam přidat nový sloupec, ale můžete použít i následující sloupec. Zadáním hodnoty aplikace Access sama vyhodnotí typ dat, které budete zadávat a jméno pole upravíte dvojklikem na záhlaví sloupce). 4) Znak hvězdičky znamená, že budeme zadávat novy záznam. Jinak toto pole slouží označovaní záznamu 5) Záznam tabulky. V našem případě jeden pacient. Do jednotlivých budek budeme zapisovat údaje o pacientovi.
Při vyplňování nemusíme nic psát do pole ID pacienta, protože je to typ automatického čísla a aplikace Access jedinečné číslo přiřadí za nás. A protože jsme si na začátku řekli, že toto číslo pro nás nemá žádnou užitnou informaci, tedy nenese žádný skutečný údaj o pacientovi, tak nám je jedno jaké číslo tam bude. Rozhodně nebude vadit, když v číslovaní budou mezery, nebo bude číslovaní jinak zpřeházené.
Po naplnění databáze pacientů to může vypadat následovně:
Editace záznamu v tabulce se provádí velice jednoduše, a sice údaj který potřebujeme opravit opravíme pouhým přepsáním údajů.
35
Modul 5
Použití databází
Smazání záznamu
1) 2) 3) 4) 5) 6)
Označíme záznam, který musíme smazat Na pásu karet Domů Stlačíme tlačítko Odstranit Vybereme možnost Odstranit záznam Tlačítko pro vytvoření nového záznamu Tlačítko pro uložení změn provedených v tabulce
Po zvolení funkce pro odstranění aplikace Access zobrazí varováni o odstranění záznamu. V případě, že si stojíme za svém a chceme záznam skutečně odstranit, zvolíme odpověď Ano.
36