Výuka a školení Excelu Výuka a školení Excelu Výuka a školení Excelu
Výuka a školení Excelu Výuka a školení Excelu

čtvrtek 6. prosince 2012

Access - druhý díl - návod na propojení dvou tabulek

V tomto článku se naučíme tabulky propojovat.
Možnost propojovat tabulky je v zásadě hlavní důvod, proč dělat tabulky v SQL databázi jako Access místo v Excelu.
V našem případě potřebujeme kromě tabulky knih mít ještě tabulku žánrů knih. V Excelu bychom tabulku zvládli takto:

Tento přístup má ale několik nevýhod. 
Za prvé data jsou příliš velká. V názvech žánrů je opakovaně uváděn stejný text (krimi, věda a technika) , což je zbytečné.
Také bych mohl chtít název některého žánru někdy změnit. Například přejmenovat "krimi" na "kriminalistika". Pak bych to musel přejmenovat ve všech řádkách a nesměl bych nikde udělat chybu - což bych asi dříve nebo později udělal.
V relačních databázích jako je Access naštěstí můžeme použít lepší způsob. Vytvoříme tabulku všech knih, pak tabulku všech žánrů, a jen je propojíme.
Jinými slovy uděláme toto:
V Accessu klikneme na Vytvoření / Tabulka a způsobem, který už známe, vytvoříme tabulku s žánry.

Původní tabulku s knihami doplníme o čísla žánrů.

Nyní tedy máme tabulku s knihami a tabulku s žánry a chceme je propojit.
Kliknu na Databázové nástroje / Relace a u obou tabulek dám "Přidat".
Vidíme toto:
-->
Myší chytím "ID" v žánrech a přetáhnu ho na "Číslo žánru" v knihách:

V této tabulce Access ověřuje, že chci opravdu propojit ta pole, která propojit chci. 
Mohu zaškrtnout referenční integritu. Pokud to v našem příkladě udělám, znamená to, že do tabulky s knihami nepůjde zapsat žádné číslo, které není v tabulce žánrů. Tedy půjde jen jednička, dvojka a trojka.

Kliknu na Vytvořit a vidím toto:

Jednička a ležatá osmička znázorňují, že jednotlivá čísla žánrů (což je to, podle čeho jsou tabulky propojeny) mohou být v tabulce knih použita vícekrát (mohu mít napříkla více knih "krimi"), ale v tabulce žánrů jen jednou (pouze jeden žánr může mít např. číslo tři).
Tabulky jsou propojeny. Z toho, co jsme si ukázali zatím není zřejmý smysl propojování tabulek. Příště si ale ukážeme, jak pracovat s dotazy, a tam už ten smysl uvidíme.
Výsledek ke stažení je tady:
https://www.dropbox.com/s/rwl90xvzr5yrt2d/access_druhy_dil.accdb

Žádné komentáře:

Okomentovat