S tímto tématem se setkáte na našich kurzech ExcelTown.
Aktuálně: kurzy můžete absolvovat jak online, tak prezenčně.

Tento článek je o tom, jak vytvořit v Accessu propojení tabulek / relaci.

Propojování tabulek je věc, kterou z principu v můžeme dělat v relačních databázích jako je Access nebo např. MS SQL, ale ne v Excelu (výjimkou je doplněk Power Pivot nebo datový model pro kontingenční tabulky).

V našem příkladu evidujeme knihy a u nich žánry. V Excelu by tabulka vypadala takto:
access_tabulka_v_excelu_pro_porovnani
Tento zápis 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 neefektivní.
Také musíme počítat, že se název některého žánru může v budoucnu změnit. Například bude třeba přejmenovat “krimi” na “kriminalistika”. Pak by bylo třeba přejmenovat položky ve všech řádkách, aniž bychom kdekoliv udělali chybu.
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 tabulky propojíme.
Jinými slovy uděláme toto:
tabulka knihy
a tabulku s žánry:
tabulka žánry
Všimněte si, že u tabulky s knihami musíme mít číslo žánru – aby bylo jasné, který žánr ke knize patří. V obou tabulkách také určíme primární klíč.
Nyní tedy máme tabulku s knihami a tabulku s žánry a chceme je propojit.
Klikneme na Databázové nástroje / Relace a u obou tabulek dáme “Přidat”.
Tabulky se objeví vedle sebe.
připravené tabulky
Myší chyneme “ID” v žánrech a přetáhneme ho na “Číslo žánru” v knihách:
V následující tabulce Access ověřuje, že chci opravdu propojit ta pole, která propojit chci.
xxx
Je také možné zaškrtnout zajištění referenční integrity. To b znamenalo, že do tabulky s knihami nepůjde zapsat žádné číslo, které není v tabulce žánrů. Tedy půjde jen jednička, dvojka a trojka. Toto opatření samozřejmě směřuje k zajištění čistoty dat.
Po kliknutí na “Vytvořit” vidíme toto:
hotová relace
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 – tedy proč to celé děláme. V jiném článku je ale vysvětleno vytvoření dotazu, a tam už je to zřejmější. 

S tímto tématem se setkáte na našich kurzech ExcelTown.
Aktuálně: kurzy můžete absolvovat jak online, tak prezenčně.