Cvičení předmětu KIV/DBM1
9. cvičení, cvičící: Ing. Tomáš Kotouč
Makra. Zabezpečení databáze (uživatelé, skupiny uživatelů, přístupová práva). Opakování vlastností atributů tabulek.
Podoba cvičné databáze před cvičením
a po ukončení cvičení.
- Makra. Makra jsou vpodstatě jednoduché procedurky, které se nepíší v nějakém programovacím jazyku, ale "naklikají se" a systém si je převede sám do potřebného kódu. Makra je možné spustit v událostních procedurách (ve formuláři u každého objektu reagující na určitou událost).
- Makra - Nový. V sloupci Akce si vybereme procedurku OtevřítFormulář a dole zadáme parametry této procedury, tedy např. Název formuláře = Hlavni. Makro uložíme pod názvem autoexec.
- Makro s názvem autoexec má oproti ostatním makrům jednu vlastnost navíc. Spustí se při každém otevření databáze. Nejčastěji se využívá právě pro spouštění hlavního formuláře aplikace.
- Založíme si ještě jedno makro. Makra - Nový. První procedurka bude ZvukovýSignal, ta nemá žádné parametry. Další procedurka bude OknoSeZprávou, která bude mít parametry Zpráva = Ahoj uživateli, Typ = Varovná zpráva ! a Záhlaví = Přivítání. Další procedurka bude OtevřítFormulář a parametry budou Název formuláře = Studenti. Makro uložíme pod názvem studenti. Zavřeme makro a spustíme ho. Počítač opravdu dvakrát zatroubí otevře hlášení a po kliknutí na tlačítko OK se nám otevře formulář Studenti.
- Moduly. Moduly slouží k psaní procedur či funkcí v jazyce Visual Basic. Tyto procedury/funkce je opět možné používat v událostních procedurách.
- Zabezpečení databáze (uživatelé, skupiny uživatelů, přístupová práva).
- Při zřízení nové databáze v ní existují dva uživatelé: Administrátor a Host. Administrátor má veškerá práva ke všem objektům (Tabulka, Dotaz, Formulář, Sestava, Makro a Modul), které se v databázi vyskytují. Host nemá žádná práva.
- Existují zde také tři skupiny uživatelů: Administrátoři, Hosté a Uživatelé. Administrátoři a Uživatelé mají apriori práva ke všem objektům databáze, Hosté nemají apriori žádná práva.
- Pomocí menu Zabezpečení - Uživatelská práva můžeme měnit (přidat / ubrat) práva různých uživatelů nebo skupin uživatelů k jednotlivým objektům databáze.
- Pomocí menu Zabezpečení - Skupiny je možné zakládat nebo rušit skupiny uživatelů.
- Pomocí menu Zabezpečení - Uživatelé je možné zakládat nebo rušit uživatele a zavádět je do různých skupin uživatelů.
- Každý objekt má svého vlastníka. Vlastník má přirozeně větší práva než ostatní uživatele, kteří mají k danému objektu práva přístupu. Změna vlastníka je možná z menu Zabezpečení - Změnit vlastníka.
- Uživatel si také může měnit své heslo a to pomocí menu Zabezpečení - Změna hesla.
- Doposud od nás databáze nevyžadovala žádné přihlášení. Jakmile bychom zavedli heslo k uživateli Administrátor, od této chvíle po nás bude chtít databáze vždy při jejín otevření zadat uživatelské jméno a heslo.
- Informace o přístupových právech k jednotlivým objektům databáze jsou uloženy v každé jednotlivé databázi. Informace o uživatelích (seznam s hesly a do jaké skupiny uživatelů patří) jsou uloženy v souboru system.mdb. To umožňuje používat stejné uživatele a skupiny uživatelů k různým databázím. Může to však mít i jednu nevýhodu: když nám někdo vymění soubor system.mdb za jiný a my necháme v našem systému uživatele admin s plnými právy ke všem objektům, tento hacker se nám dostane velice jednoduše do naší databáze. Proto je dobré, když si založíme nového administrátora, na něj převedeme vlastnictví veškerých objektů a admina potom smažeme. Tím velice znepříjemníme práci případnému hackerovi.
- Založíme si nového uživatele a přidáme ho do skupiny Administrátoři.
- Menu Zabezpečení - Uživatelé. Tlačítko Nový. Jméno = KAREL, Osobní kód = 123456.
- Dole mu přidáme skupinu Administrátoři. Skupinu Uživatelé mu nelze odebrat, protože i administrátor je zároveň uživatel.
- Opakování vlastností atributů tabulek.
- Typy dat a jejich možný formát dat
Typ dat |
Formát dat |
Text |
|
Poznámka |
|
Číslo |
Obecné číslo, Měna, Pevný, Standardní, Procenta, Vědecký |
Datum / čas |
Obecný datum, Datum dlouhý, Datum střední, Datum krátký, Čas dlouhý, Čas střední, Čas krátký |
Měna |
stejné jako Číslo-Měna |
Počítadlo |
|
Ano / Ne |
True/False, Ano/Ne, Zapnuto/Vypnuto |
Objekt OLE |
|
- Maska. Používáme, když chceme, aby nám do položky uživatel zadával data nějakým strukturovaným způsobem. Např. u PSČ = tři číslice, mezera a dvě číslice, nesmějí zde být žádná písmenka, žádná číslice nesmí chybět a žádná nesmí být navíc. Masku je možné vytvořit pouze pro atributy typu Text nebo Datum/Čas.
- Podmínka platnosti. Zde je možné si zadat podmínku, kdy budou data zadaná uživatelem platit, jinak je systém neuloží a vyzve uživatele zadanou hláškou, aby data upravil.
- Index. Index nám slouží k dvěma věcem:
- Umožňuje nám rychleji vyhledávat data = vytvoří si totiž skrytou tabulkou, která obsahuje pouze vybrané sloupce a data v této tabulce si setřídí tak, aby k nim dokázal co nejrychleji přistoupit. Dále obsahuje sloupec, který ukazuje na záznam v naší tabulce a tak aplikace záznam najde v indexu ale zobrazí nám záznam v naší tabulce.
- Máme možnost zajištovat pomocí indexu jedinečnost určité skupiny atributů. Např. v tabulce si jako klíč zadáme nějaké počítadlo, ale chceme aby dva určité atributy tvořili pomyslný klíč, tedy že spojení jejich hodnot bude v tabulce jedinečné, tak založíme index, který bude obdsahovat tyto dva atributy a zadáme u nich, že musí být ve spojení jedinečné.
Indexi u tabulky nastavíme pomocí ikony Ikony.
- Vlastnosti. Umožňuje zadat pro tabulku jednu podmínku, která může být nad více jejích atributech. Tuto vlastnost u tabulky nastavíme pomocí ikony Vlastnosti.
- Vlastní menu. Access umožňuje si založit pro aplikaci vlastní menu, takže když spustíme aplikaci, jako horní menu se nám objeví jen to naše.
- Konzultace k semestrálním pracem.
Pokud najdete nějaké nesrovnalosti, zašlete je, prosím, na e-mailovou adresu kotouc@civ.zcu.cz.