Vzťahy medzi poľami, tabuľkami, záznamami a tak ďalej sú najbežnejšie veci, s ktorými sa v Accesse 2016 stretávate. Majte na pamäti týchto desať tipov:
Vzťah typu one-to-many spája jeden záznam v nadradenej tabuľke s mnohými záznamami v podradenej tabuľke.
Nastavte vzťah na prepojenie objednávok so zákazníkmi alebo miesta s udalosťami. Jeden zákazník môže mať veľa objednávok a jedno miesto môže mať veľa udalostí. Týmto spôsobom nemusíte pri každej objednávke opakovať všetky kontaktné informácie zákazníka, ani všetky informácie o mieste každej udalosti.
Vzťah jeden k jednému spája jeden záznam v nadradenej tabuľke s jedným záznamom v podradenej tabuľke.
Toto nie je bežný typ vzťahu, ale dá sa použiť, ak potrebujete rozdeliť tabuľku, ktorá obsahuje veľa polí, na dve tabuľky.
Prepojte pole primárneho kľúča v nadradenej tabuľke s rovnakým poľom (nazývaným cudzí kľúč) v podradenej tabuľke.
Toto je najbežnejší scenár. Rodičovská tabuľka obsahuje pole primárneho kľúča a podriadená tabuľka obsahuje rovnaký názov poľa. Napríklad tabuľka Zákazníci a objednávky môže zdieľať CustomerID. CustomerID je zvyčajne primárny kľúč zákazníkov a cudzí kľúč v objednávkach.
Polia spojené vo vzťahu musia byť rovnakého typu údajov.
Textové pole v nadradenej tabuľke nemôžete dať do súvislosti s číselným poľom v podradenej tabuľke a naopak. Polia musia byť buď textové alebo číselné polia v každej tabuľke.
Vynútite referenčnú integritu v dialógovom okne Upraviť vzťahy, aby ste zabránili záznamu „osiroteného“ záznamu v podradenej tabuľke.
Sirota je záznam v podradenej tabuľke, ktorý nemá zodpovedajúci záznam v nadradenej tabuľke. Klasickým príkladom je objednávka v tabuľke Objednávky pre zákazníka, ktorá nie je v tabuľke Zákazníci. Referenčná integrita bráni zadávaniu týchto druhov osirotených objednávok.
Nastavte Kaskádovú aktualizáciu súvisiacich polí v dialógovom okne Upraviť vzťahy, aby ste aktualizovali hodnotu kľúča v podradenej tabuľke, keď sa aktualizuje v nadradenej tabuľke.
Predpokladajme, že máte dve tabuľky, zoznam kategórií v tabuľke ExpenseType (názov poľa Category) a pole v tabuľke Expenses s názvom Category. Pole Kategória v časti Výdavky je vyplnené rozbaľovacím poľom, ktoré získava údaje z poľa Kategória tabuľky Typ výdavkov. Ďalej predpokladajme, že pre Dining bol urobený preklep; písalo sa Dinning. Ak by ste nastavili Kaskádovú aktualizáciu súvisiacich polí, môžete v ExpenseType upraviť Reštauráciu na Reštauráciu a zmení sa na každom zázname, ktorý sa použije v tabuľke Expenses.
V dialógovom okne Upraviť vzťahy nastavte možnosť Kaskádové odstraňovanie súvisiacich záznamov, ak chcete odstrániť súvisiace záznamy v podradenej tabuľke, keď sa príslušný záznam odstráni v nadradenej tabuľke.
Keď je toto nastavenie zapnuté vo vzťahu medzi LocationID v Locations a LocationID v Events, odstráňte záznam polohy a vymažete všetky udalosti pre toto miesto.
Nastavenie vzťahov medzi tabuľkami automaticky nastaví spojenia pre tieto tabuľky pri vytváraní dotazov.
Spojenia vzťahov sa prenesú do návrhového zobrazenia dotazu. Ak nastavíte vzťah medzi Locations a Events v LocationID, uvidíte tento spojovací riadok, keď pridáte tieto tabuľky do nového dotazu v návrhu dotazu.
Vymažte pole, ktoré je súčasťou vzťahu, a vymažete vzťah.
Nemôžete mať vzťah medzi dvoma poľami, ak jedno z nich chýba, však? Access teda odstráni prerušený vzťah, keď odstránite pole, ktoré je súčasťou tohto vzťahu.
Ak je primárny kľúč súčasťou vzťahu, nemôžete zmeniť primárny kľúč v tejto tabuľke na iné pole bez toho, aby ste najprv vzťah odstránili.
Ak chcete zmeniť primárne kľúče v tabuľke, ktorej primárny kľúč je súčasťou vzťahu, musíte najprv otvoriť okno Vzťahy a odstrániť vzťah, kým vám Access umožní zmeniť primárny kľúč na iné pole v tejto tabuľke. V okne Vzťahy kliknite pravým tlačidlom myši na spojnicu medzi dvoma tabuľkami a vyberte možnosť Odstrániť, aby ste vzťah odstránili.