Sprievodca vzťahmi tabuliek

Dôležité : Tento článok je strojovo preložený, prečítajte si vyhlásenie. Anglickú verziu tohto článku nájdete tu a môžete ju použiť ako referenciu.

Jedným z cieľov dobrého návrhu databázy je odstrániť redundanciu údajov (duplicitné údaje). Dosiahnuť tento cieľ, rozdelíte údaje do mnohých tematických tabuliek tak, že každá skutočnosť je zastúpená iba raz. Potom poskytnete prístup prostriedky, pomocou ktorých má spojiť rozdelené informácie – urobíte to umiestnením aktuálnych polí do tabuliek, ktoré sú prepojené. Urobiť tento krok správne, musíte najskôr porozumieť vzťahom medzi tabuľkami a potom presne určiť tieto vzťahy v databáze.

Ďalšie informácie nájdete v článku Základy navrhovania databázy.

Tento článok sa nevzťahuje na vzťahy v databáze web. Webová databáza nepodporuje okno vzťahy. Vyhľadávacie polia sa používa na vytvorenie vzťahov v databáze web. Ďalšie informácie nájdete v článku vybudovať databázu zdieľať na webe.

Obsah článku

Úvod

Typy vzťahov tabuliek

Dôvody na vytváranie vzťahov tabuliek

Vysvetlenie referenčnej integrity

Zobrazenie vzťahov tabuliek

Vytvorenie vzťahu medzi tabuľkami

Odstránenie vzťahu medzi tabuľkami

Zmena vzťahu tabuliek

Presadzovanie referenčnej integrity

Úvod

Po vytvorení tabuľky pre každú tému v databáze musíte poskytnúť prístup prostriedky, pomocou ktorých spojiť túto informáciu späť znova v prípade potreby. Urobíte to umiestnením aktuálnych polí do tabuliek, ktoré súvisia, a určením vzťahov medzi tabuľkami. Potom môžete vytvoriť dotazy, formuláre a zostavy, ktoré zobrazia informácie z niekoľkých tabuliek súčasne. Napríklad formulár tu obsahuje informácie získané z niekoľkých tabuliek:

Objednávkový formulár, ktorý zobrazuje súvisiace informácie z piatich tabuliek súčasne

1. Informácie v tomto formulári pochádzajú z tabuľky Zákazníci...

2. ...tabuľky Objednávky...

3. ...tabuľky Produkty...

4. ...a tabuľky Podrobnosti objednávok...

Meno zákazníka v poli Príjemca je vybraté z tabuľky Zákazníci, hodnoty identifikácie objednávky a dátumu objednávky pochádzajú z tabuľky Objednávky, názov produktu pochádza z tabuľky Produkty a hodnoty jednotkovej ceny a množstva pochádzajú z tabuľky Podrobnosti objednávok. Tieto tabuľky sú navzájom prepojené mnohými spôsobmi tak, aby boli informácie z každej tabuľky prenesené do formulára.

V predchádzajúcom príklade musia byť polia v tabuľkách koordinované, aby uvádzali informácie o tej istej objednávke. Táto koordinácia sa dosiahne pomocou vzťahov tabuliek. Vzťah tabuliek funguje na základe priradenia údajov v poliach kľúčov, pričom často ide o pole s tým istým názvom v obidvoch tabuľkách. Vo väčšine prípadov predstavujú tieto priradené polia primárny kľúč v jednej tabuľke, ktorý poskytuje jedinečný identifikátor pre každý záznam, a cudzí kľúč v druhej tabuľke. Zamestnanci môžu byť napríklad priradení k objednávkam, za ktoré sú zodpovední, pomocou vytvorenia vzťahu tabuliek medzi poľami identifikácie zamestnancov v tabuľke Zamestnanci a tabuľke Objednávky.

Identifikácia zamestnanca použitá ako primárny kľúč v tabuľke Zamestnanci a cudzí kľúč v tabuľke Objednávky.

1. Identifikácia zamestnanca sa zobrazuje v oboch tabuľkách – ako primárny kľúč...

2. ... a ako cudzí kľúč.

Na začiatok stránky

Typy vzťahov tabuliek

Existujú tri typy vzťahov tabuliek.

  • Vzťah „one-to-many“

    Za objednávku sledovania databázy, ktorá obsahuje tabuľku Zákazníci a tabuľku objednávky. Zákazník môže predložiť ľubovoľný počet objednávok. Z toho vyplýva, že každý zákazník uvedený v tabuľke Zákazníci môže mať veľa objednávok uvedených v tabuľke objednávky. Vzťah medzi tabuľkou zákazníci a tabuľkou objednávky je preto ten mnohých vzťah.

    Zastupovať jeden k mnohým vzťah v návrhu databázy, použite hlavný kľúč na strane "one" tohto vzťahu a pridajte ho ako ďalšie pole alebo polia do tabuľky na strane "many" tohto vzťahu. V tomto prípade napríklad pridáte nové pole – pole identifikácie z tabuľky Zákazníci – do tabuľky objednávky a to meno, ID zákazníka. Prístupu môže potom použiť identifikačné číslo zákazníka v tabuľke objednávky na umiestnenie správneho zákazníka pre každú objednávku.

  • Vzťah „many-to-many“

    Uvažujme o vzťahu medzi tabuľkou produkty a tabuľkou objednávky. Jedna objednávka môže obsahovať viac ako jeden produkt. Na druhej strane, jeden produkt môže zobraziť na mnohých objednávkach. Preto pre každý záznam v tabuľke objednávky môže existovať veľa záznamov v tabuľke produkty. Okrem toho, pre každý záznam v tabuľke produkty môže existovať veľa záznamov v tabuľke objednávky. Tento typ vzťahu sa nazýva mnoho-to-many vzťah, pretože pre každý produkt môže existovať veľa objednávok a pre každú objednávku môže existovať veľa produktov. Všimnite si, že na zistenie existujúcich mnoho-to-many vzťahy medzi tabuľkami, je dôležité, že ste zvážiť oboch stranách vzťahu.

    Ak chcete vyjadriť vzťah „many-to-many“, musíte vytvoriť tretiu tabuľku (často nazývaná spojovacia tabuľka), ktorá rozloží vzťah „many-to-many“ na dva vzťahy „one-to-many“. Do tretej tabuľky vložíte hlavný kľúč z obidvoch tabuliek. Výsledkom toho bude, že tretia tabuľka zaznamená každý výskyt alebo inštanciu tohto vzťahu. Tabuľky Objednávky a Produkty môžu mať napríklad vzťah „many-to-many“, ktorý je určený vytvorením dvoch vzťahov „one-to-many“ v tabuľke Podrobnosti objednávok. Jedna objednávka môže mať veľa produktov a každý produkt sa môže zobraziť na viacerých objednávkach.

  • Vzťah „one-to-one“

    V vzťah one-to-one, každý záznam v prvej tabuľke môže mať len jeden zodpovedajúci záznam v druhej tabuľke a každý záznam v druhej tabuľke môže mať len jeden zodpovedajúci záznam v prvej tabuľke. Tento typ vzťahu nie je bežné, pretože najčastejšie sú informácie spojené týmto spôsobom uložené v tej istej tabuľke. Vzťah "one-to-one" môžete použiť na rozdelenie tabuľky s mnohými poľami za účelom oddelenia časti tabuľky z bezpečnostných dôvodov alebo uloženia informácií, ktoré sa týka iba podmnožiny hlavnej tabuľky. Keď určíte takýto vzťah, obidve tabuľky musia zdieľať spoločné pole.

Na začiatok stránky

Dôvody na vytváranie vzťahov tabuliek

Vzťahy tabuliek môžete vytvoriť explicitne pomocou okna vzťahy alebo presunutím poľa z tably Zoznam polí. Program Access používa vzťahy tabuliek vedieť spôsobu spájania tabuliek, keď ich potrebujete použiť v objekte databázy. Existuje niekoľko dôvodov, prečo by ste mali vytvoriť vzťahov tabuliek pred vytvorením ďalších objektov databázy, ako sú napríklad formuláre, dotazy a zostavy.

  • Vzťahy tabuliek sú podkladom pre návrhy dotazov

    Ak chcete pracovať so záznamami z viacerých tabuliek, často musíte vytvoriť dotaz, ktorý spája tieto tabuľky. Dotaz pracuje priradením hodnôt do primárny kľúč poľa prvej tabuľky poľu cudzieho kľúča v druhej tabuľke. Napríklad, vrátiť riadky zoznamu všetkých objednávok pre všetkých zákazníkov, vytvoríte dotaz, ktorý spája tabuľku Zákazníci s tabuľkou objednávky na základe Identifikačného poľa zákazníka. V okne vzťahy môžete manuálne určiť polia, ktoré chcete pripojiť. Avšak, ak už máte určené vzťahy medzi tabuľkami, prístup dodáva predvolené spojenie na základe existujúceho vzťahu tabuliek. Okrem toho, ak použijete jedného zo sprievodcov dotazom, program Access použije informácie získané zo vzťahov tabuliek, ste už určili, aby vás informoval o možnostiach a vopred vyplnil nastavenie vlastností príslušnými predvolenými hodnotami.

  • Vzťahy tabuliek sú podkladom pre návrhy formulárov a zostáv

    Keď navrhujete formulár alebo zostavu, program Access použije informácie, ktoré získa zo vzťahov tabuliek, ste už určili, aby vás informoval o možnostiach a vopred vyplnil nastavenie vlastností príslušnými predvolenými hodnotami.

  • Vzťahy tabuliek sú základom zabezpečenia referenčnej integrity na zabránenie výskytu záznamov bez párov v databáze. Záznam bez páru je záznam, ktorý odkazuje na ďalší záznam, ktorý neexistuje (napríklad záznam objednávky, ktorý odkazuje na záznam zákazníka, ktorý neexistuje).

    Keď navrhujete databázu, rozdelíte informácie do tabuliek, z ktorých každá má hlavný kľúč. Potom pridáte cudzie kľúče do súvisiacich tabuliek, ktoré odkazujú na tieto hlavné kľúče. Týchto cudzích kľúčov kľúč párovanie tvoria základ vzťahov tabuliek a dotazov Multi-tabuľky. Je dôležité, preto, že tieto cudzí kľúč odkazy hlavných zostali synchronizované. Referenčná integrita pomáha zabezpečiť synchronizáciu odkazov a závisí od vzťahov tabuliek.

Na začiatok stránky

Vysvetlenie referenčnej integrity

Keď navrhujete databázu, rozdelíte informácie do mnohých tematických tabuliek na minimalizovanie nadbytočných údajov. Potom poskytnete prístup prostriedky, pomocou ktorých má spojiť údaje späť dohromady umiestnením aktuálnych polí do súvisiacich tabuliek. Napríklad vyjadriť vzťah jedna k mnohým budete mať hlavný kľúč v tabuľke "one" a pridajte ho ako ďalšie pole do tabuľky "veľa". Spojiť údaje späť, program Access vyberie hodnotu v tabuľke "many" a vyhľadá zodpovedajúcu hodnotu v tabuľke "one". Týmto spôsobom hodnoty v tabuľke "many" odkazujú na zodpovedajúce hodnoty v tabuľke "one".

Predpokladajme, že máte vzťah „one-to-many“ medzi tabuľkou Špeditéri a tabuľkou Objednávky a chcete odstrániť špeditéra. Ak špeditér, ktorého chcete odstrániť, má objednávky v tabuľke Objednávky, tieto objednávky sa stanú záznamami bez párov, keď odstránite záznam špeditéra. Objednávky budú stále obsahovať identifikáciu špeditéra, ale identifikácia už nebude viac platná, pretože záznam, na ktorý odkazuje, už neexistuje.

Cieľom referenčnej integrity je zabrániť výskytu záznamov bez párov a zachovať synchronizáciu odkazov, aby sa táto hypotetická situácia vôbec nevyskytla.

Zabezpečiť referenčnú integritu zabezpečíte povolením vzťahu tabuliek (pozrite tému zabezpečenie referenčnej integrity podrobný návod). Po zabezpečení program Access odmietne všetky operácie, ktoré by narušili referenčnú integritu pre tento vzťah tabuliek. To znamená, že program Access odmietne aktualizácie, ktoré menia cieľ odkazu a odstránené položky, ktoré odstraňujú cieľ odkazu. Avšak, je možné, budete mať úplne opodstatnenú požiadavku na zmenu hlavného kľúča pre špeditéra, ktorý má objednávky v tabuľke objednávky. Pre takéto prípady, čo naozaj potrebujete, je pre Access automaticky aktualizoval všetky ovplyvnené riadky ako súčasť jednej operácie. Tak prístup zabezpečuje, že aktualizácia je kompletne vyplnené tak, aby databáza nezostala v nekonzistentnom stave s niektorými riadkami aktualizovanými a niektorými nie. Z tohto dôvodu program Access podporuje možnosť Kaskádová aktualizácia súvisiacich polí. Keď referenčnú integritu a vybrať možnosť Kaskádová aktualizácia súvisiacich polí, a potom aktualizovať hlavný kľúč, Access automaticky aktualizovať všetky polia, ktoré odkazujú na hlavný kľúč.

Je tiež možné, budete mať opodstatnenú požiadavku odstrániť riadok a všetky súvisiace záznamy – napríklad záznam o špeditérovi a všetky súvisiace objednávky pre tohto špeditéra. Z tohto dôvodu program Access podporuje možnosť kaskádové odstránenie súvisiacich záznamov. Keď referenčnú integritu a vybrať možnosť kaskádové odstránenie súvisiacich záznamov a potom odstránite záznam na strane hlavného kľúča tohto vzťahu, program Access automaticky odstráni všetky záznamy, ktoré odkazujú na hlavný kľúč.

Na začiatok stránky

Zobrazenie vzťahov tabuliek

Ak chcete zobraziť vzťahy tabuliek, kliknite na položku vzťahy na karte Databázové nástroje. Otvorí sa okno vzťahy a zobrazia sa existujúce vzťahy. Ak ešte neboli určené žiadne vzťahy tabuliek a okno Vzťahy otvárate prvýkrát, program Access zobrazí výzvu na pridanie tabuľky alebo dotazu do okna.

Otvorenie okna Vzťahy

  1. Na karte Súbor kliknite na položku Otvoriť.

  2. V dialógovom okne Otvorenie vyberte databázu a otvorte ju.

  3. Na karte Databázové nástroje v skupine Vzťahy kliknite na položku Vzťahy.

  4. Ak databáza obsahuje vzťahy, zobrazí sa okno vzťahy. Ak databáza neobsahuje žiadne vzťahy a otvárate okno vzťahy po prvýkrát, zobrazí sa dialógové okno Zobrazenie tabuľky. Kliknutím na tlačidlo Zavrieť zatvorte dialógové okno.

  5. Na karte Návrh v skupine Vzťahy kliknite na položku Všetky vzťahy.

    Týmto sa zobrazia všetky určené vzťahy v databáze. Všimnite si, že skryté tabuľky (tabuľky, ktoré skryté začiarkavacie políčko v tabuľke Vlastnosti dialógové okno) a ich vzťahy sa zobrazia až je začiarknuté políčko Zobraziť skryté objekty v dialógovom okne Možnosti navigácie.

Čiara nakreslená medzi tabuľkami v okne Vzťahy predstavuje vzťah tabuliek. Vzťah, ktorý nie je v súlade s referenčnou integritou, sa zobrazí ako tenká čiara medzi spoločnými poľami, ktoré sú podkladom pre vzťah. Keď vyberiete vzťah kliknutím na jeho čiaru, čiara zhrubne, čo signalizuje, že je vybratá. Ak presadzujete referenčnú integritu pre tento vzťah, čiara sa zobrazí ako hrubšia na obidvoch koncoch. Okrem toho sa nad hrubou časťou čiary na jednej strane vzťahu zobrazí číslica 1 a nad hrubou časťou čiary na druhej strane sa zobrazí symbol nekonečna ().

Keď je okno Vzťahy aktívne, na páse s nástrojmi môžete vybrať nasledujúce príkazy:

Na karte Návrh v skupine Nástroje:

  • Upraviť vzťahy    . Otvorí dialógové okno Úprava vzťahov . Keď vyberiete čiaru vzťahu, môžete kliknúť na položku Upraviť vzťahy, ak chcete zmeniť vzťah tabuliek. Môžete tiež dvakrát kliknúť na čiaru vzťahu.

  • Zrušiť rozloženie    . Vymaže všetky tabuľky a vzťahy zo zobrazenia v okne Vzťahy. Nezabúdajte, že tento príkaz iba skryje tabuľky a vzťahy – neodstráni ich.

  • Zostava vzťahov    . Vytvorí zostavu, ktorá zobrazí tabuľky a vzťahy v databáze. Zostava zobrazí iba tabuľky a vzťahy, ktoré nie sú skryté v okne Vzťahy.

Na karte Návrh v skupine Vzťahy:

  • Zobraziť tabuľku    . Otvorí dialógové okno Zobrazenie tabuľky, aby ste mohli vybrať tabuľky a dotazy na zobrazenie v okne Vzťahy.

  • Skryť tabuľku    . Skryje vybratú tabuľku v okne Vzťahy.

  • Priame vzťahy    . Zobrazí všetky vzťahy a súvisiace tabuľky pre vybratú tabuľku v okne Vzťahy, ak nie sú už zobrazené.

  • Všetky vzťahy    . Zobrazí všetky vzťahy a súvisiace tabuľky v databáze v okne Vzťahy. Nezabúdajte, že skryté tabuľky (tabuľky, ktoré majú začiarknuté políčko Skryté vo svojom okne Vlastnosti) a ich vzťahy sa zobrazia až po výbere možnosti Zobraziť skryté objekty v dialógovom okne Možnosti navigácie.

  • Zavrieť    . Zavrie okno Vzťahy. Ak ste urobili akékoľvek zmeny v rozložení okna Vzťahy, zobrazí sa výzva, či chcete uložiť tieto zmeny.

Na začiatok stránky

Vytvorenie vzťahu medzi tabuľkami

Vzťah tabuliek môžete vytvoriť pomocou okna Vzťahy alebo presunutím poľa do údajového hárka z tably Zoznam polí. Keď vytvoríte vzťah medzi tabuľkami, spoločné polia nemusia mať rovnaké názvy, hoci ich často majú. Tieto polia však musia mať ten istý typ údajov. Ak je primárny kľúč poľom s automatickým číslovaním, cudzí kľúč môže byť číselným poľom, ak je vlastnosť VeľkosťPoľa obidvoch polí rovnaká. Môžete napríklad priradiť pole s automatickým číslovaním k číselnému poľu, ak má vlastnosť VeľkosťPoľa oboch polí hodnotu Dlhé celé číslo. Keď sú obe spoločné polia číselnými poľami, musia mať rovnaké nastavenie vlastnosti VeľkosťPoľa.

Vytvorenie vzťahu tabuliek pomocou okna Vzťahy

  1. Na karte Súbor kliknite na položku Otvoriť.

  2. V dialógovom okne Otvorenie vyberte databázu a otvorte ju.

  3. Prejdite na kartu Databázové nástroje a v skupine Vzťahy kliknite na položku Vzťahy.

  4. Ak ste ešte neurčili žiadne vzťahy, automaticky sa zobrazí dialógové okno Zobrazenie tabuľky. Ak sa nezobrazí, kliknite na položku Zobrazenie tabuľky na karte Návrh v skupine Vzťahy.

Dialógové okno Zobrazenie tabuľky zobrazí všetky tabuľky a dotazy v databáze. Ak chcete zobraziť len tabuľky, kliknite na položku Tabuľky. Ak chcete zobraziť len dotazy, kliknite na položku Dotazy. Ak chcete zobraziť aj tabuľky aj dotazy, kliknite na položku Obe.

  1. Vyberte jednu alebo viac tabuliek alebo dotazov a potom kliknite na tlačidlo Pridať. Po dokončení pridávania tabuliek a dotazov do okna Vzťahy kliknite na tlačidlo Zavrieť.

  2. Presuňte pole (väčšinou hlavný kľúč) z jednej tabuľky do aktuálneho poľa (cudzí kľúč) v druhej tabuľke. Ak chcete presunúť viac polí, stlačte kláves CTRL, kliknite na všetky polia a potom ich presuňte.

Zobrazí sa dialógové okno Úprava vzťahov.

  1. Skontrolujte, či zobrazené názvy polí sú aktuálnymi poľami vzťahu. Ak je názov poľa nesprávny, kliknite na názov poľa a vyberte nové pole zo zoznamu.

Ak chcete pre tento vzťah zabezpečiť referenčnú integritu, začiarknite políčko Zabezpečiť referenčnú integritu. Ďalšie informácie o referenčnej integrite nájdete v častiach Vysvetlenie referenčnej integrity a Zabezpečenie referenčnej integrity.

  1. Kliknite na položku Vytvoriť.

    Medzi oboma tabuľkami sa vykreslí čiara vzťahu. Ak ste začiarkli políčko Zabezpečiť referenčnú integritu, čiara sa zobrazí hrubšia na oboch koncoch. Ak ste začiarkli políčko Zabezpečiť referenčnú integritu, nad hrubou časťou čiary na jednej strane vzťahu sa zobrazí číslica 1 a nad hrubou časťou čiary na druhej strane sa zobrazí symbol nekonečna ().

    Poznámky : 

    • Vytvorenie vzťahu one-to-one    Obe spoločné polia (zvyčajne hlavný kľúč a polia cudzieho kľúča) musia mať jedinečný index. To znamená, že vlastnosť indexované je pre tieto polia nastavená na Áno (bez duplicít). Ak majú obe polia jedinečný index, program Access vytvorí vzťah one-to-one.

    • Vytvorenie vzťahu jeden k mnohým    Pole na strane "one" (zvyčajne hlavný kľúč) vzťah musí mať jedinečný index. To znamená, že vlastnosť indexované je pre toto pole nastavená na Áno (bez duplicít). Pole na strane "many" by nie mať jedinečný index. To môže mať index, ale musí povoľovať duplicity. To znamená, že vlastnosť indexované je pre toto pole nastavená č, alebo Áno (duplicity povolené). Keď má jedno pole jedinečný index a druhý nie, program Access vytvorí vzťah one many.

Vytvorenie vzťahu medzi tabuľkami použitím tably Zoznam polí

Môžete pridať pole do existujúcej tabuľky, ktorá je otvorená v údajovom zobrazení presunutím z tably Zoznam polí. Tabla Zoznam polí zobrazuje polia dostupné v súvisiacich tabuľkách, a tiež polia dostupné v iných tabuľkách. Keď presuniete pole z "inej" (nesúvisiacej) tabuľky a potom dokončíte Sprievodcu vyhľadávaním, medzi tabuľkou v table Zoznam polí a tabuľkou, do ktorej ste presunuli pole, je automaticky vytvorí nový jeden k mnohým vzťah. Tento vzťah vytvorený programom Access predvolene nepredpisuje referenčnú integritu. Zabezpečiť referenčnú integritu, musíte vzťah upraviť. Nájdete v časti Zmena vzťahu tabuliek pre viac informácií.

Otvorenie tabuľky v údajovom zobrazení

  1. Na karte Súbor kliknite na položku Otvoriť.

  2. V dialógovom okne Otvorenie vyberte databázu a otvorte ju.

  3. Na navigačnej table kliknite pravým tlačidlom myši na tabuľku, do ktorej chcete pridať pole a pre ktorú chcete vytvoriť vzťah, a potom kliknite na položku Otvoriť.

Otvorenie tably Zoznam polí

  • Stlačte kombináciu klávesov ALT + F8.

    Zobrazí sa tabla Zoznam polí.

Zoznam polí tabla zobrazuje všetky ostatné tabuľky vo vašej databáze, zoskupené do kategórií. Keď pracujete s tabuľkou v údajovom zobrazení, program Access zobrazí polia v obidvoch kategóriách v table Zoznam polí: polia dostupné v súvisiacich tabuľkách a polia dostupné v iných tabuľkách. Prvá kategória zobrazuje všetky tabuľky, ktoré majú vzťah s tabuľkou aktuálne pracujete. Druhá kategória zobrazuje všetky tabuľky, s ktorými vaša tabuľka nemá vzťah.

Keď na table Zoznam polí kliknete na znamienko plus (+) vedľa názvu tabuľky, zobrazí sa zoznam všetkých polí, ktoré sú v tejto tabuľke k dispozícii. Ak chcete pridať pole do svojej tabuľky, presuňte požadované pole myšou z tably Zoznam polí do tabuľky v údajovom zobrazení.

Pridanie poľa a vytvorenie vzťahu z tably Zoznam polí

  1. Na table Zoznam polí prejdite do časti Polia dostupné v iných tabuľkách a kliknutím na znamienko plus (+) vedľa názvu tabuľky zobrazte zoznam polí v tejto tabuľke.

  2. Presuňte požadované pole myšou z tably Zoznam polí do tabuľky, ktorá je otvorená v údajovom zobrazení.

  3. Po zobrazení vkladacieho riadka vložte pole na toto miesto.

    Spustí sa Sprievodca vyhľadávaním.

  4. Dokončite prácu s nástrojom Sprievodca vyhľadávaním podľa zobrazených pokynov.

    Pole sa zobrazí v tabuľke v údajovom zobrazení.

Keď presuniete pole z "inej" (nesúvisiacej) tabuľky a potom dokončíte Sprievodcu vyhľadávaním, medzi tabuľky Zoznam polí a tabuľkou, do ktorej ste presunuli pole je automaticky vytvorí nového vzťahu jeden k mnohým. Tento vzťah vytvorený programom Access predvolene nepredpisuje referenčnú integritu. Zabezpečiť referenčnú integritu, musíte vzťah upraviť. Nájdete v časti Zmena vzťahu tabuliek pre viac informácií.

Na začiatok stránky

Odstránenie vzťahu medzi tabuľkami

Odstránenie vzťahu tabuliek, musíte odstrániť čiaru vzťahu v okne vzťahy. Opatrne umiestnite kurzor tak, aby ukazoval na čiaru vzťahu a potom kliknite na čiaru. Čiara vzťahu sa zobrazuje hustejšia, keď je vybratá. Keď je čiara vzťahu vybratá, stlačte kláves DELETE. Všimnite si, že keď odstránite vzťah, odstránite tiež podporu referenčnej integrity pre ten vzťah, ak je povolená. Ako výsledok, bude prístup nebude automaticky zabraňovať vytvoreniu záznamov bez párov na strane "many" vzťahu.

  1. Na karte Databázové nástroje v skupine Vzťahy kliknite na položku Vzťahy.

Zobrazí sa okno vzťahy. Ak ste ešte nedefinovali žiadne vzťahy a to je prvýkrát otvárate okno vzťahy, zobrazí sa dialógové okno Zobrazenie tabuľky. Ak sa zobrazí dialógové okno, kliknite na tlačidlo Zavrieť.

  • Na karte Návrh v skupine Vzťahy kliknite na položku Všetky vzťahy.

Zobrazia sa všetky tabuľky, ktoré majú vzťahy, a zobrazia sa aj čiary vzťahov.

  1. Kliknite na čiaru vzťahu pre vzťah, ktorý chcete odstrániť. Vybratá čiara vzťahu sa zobrazuje ako hrubšia.

  2. Stlačte kláves DELETE.

    alebo

Kliknite pravým tlačidlom myši a potom kliknite na položku Odstrániť.

  1. Program Access môže zobraziť hlásenie Naozaj chcete natrvalo odstrániť vybratý vzťah z databázy?. Ak sa zobrazí toto potvrdzujúce hlásenie, kliknite na tlačidlo Áno.

Poznámka : Ak jednu z tabuliek, použitých vo vzťahu tabuliek, práve používa napríklad iná osoba alebo proces, alebo je táto tabuľka v otvorenom objekte databázy (ako je napríklad formulár), nebudete môcť odstrániť vzťah. Pred odstránením vzťahu musíte najskôr zavrieť všetky otvorené objekty, ktoré používajú tieto tabuľky.

Na začiatok stránky

Zmena vzťahu tabuliek

Vzťah tabuľky zmeníte tým, že ho vyberiete v okne Vzťahy a upravíte ho. Opatrne umiestnite kurzor tak, aby ukazoval na čiaru vzťahu, a potom kliknite na čiaru, aby ste ju vybrali. Vybratá čiara vzťahu sa zobrazuje ako hrubšia. Keď vyberiete čiaru vzťahu, dvakrát na ňu kliknite alebo kliknite na položku Upraviť vzťahy v skupine Nástroje na karte Návrh. Zobrazí sa dialógové okno Úprava vzťahov.

Vykonanie zmien v dialógovom okne Úprava vzťahov

  1. Na karte Databázové nástroje v skupine Vzťahy kliknite na položku Vzťahy.

Zobrazí sa okno vzťahy. Ak ste ešte nedefinovali žiadne vzťahy a to je prvýkrát otvárate okno vzťahy, zobrazí sa dialógové okno Zobrazenie tabuľky. Ak sa zobrazí dialógové okno, kliknite na tlačidlo Zavrieť.

  • Na karte Návrh v skupine Vzťahy kliknite na položku Všetky vzťahy.

  • Zobrazia sa všetky tabuľky, ktoré majú vzťahy, a zobrazia sa aj čiary vzťahov.

  • Kliknite na čiaru vzťahu pre vzťah, ktorý chcete zmeniť. Vybratá čiara vzťahu sa zobrazuje ako hrubšia.

  • Dvakrát kliknite na čiaru vzťahu.

  • Vykonajte zmeny a kliknite na tlačidlo OK.

    V dialógovom okne Úprava vzťahov môžete vykonávať zmeny vo vzťahoch medzi tabuľkami. Môžete vymeniť tabuľku alebo dotaz na niektorej strane vzťahu alebo môžete vymeniť polia. Môžete tiež nastaviť typ spojenia, zabezpečiť referenčnú integritu a vybrať možnosť kaskádovania. Ďalšie informácie o type spojenia a o tom, ako ho nastaviť, nájdete v časti Nastavenie typu spojenia. Ďalšie informácie o tom, ako presadzovať referenčnú integritu a vybrať možnosť kaskádovania, nájdete v časti Zabezpečenie referenčnej integrity.

Nastavenie typu spojenia

Keď zadefinujete vzťah tabuliek, podkladom pre návrhy dotazov fakty o vzťahu. Napríklad, ak zadefinujete vzťah medzi dvoma tabuľkami a potom vytvoríte dotaz, ktorý používa tieto tabuľky, program Access automaticky vyberie prednastavené zodpovedajúce polia na základe polí zadaných vo vzťahu. Môžete potlačiť tieto počiatočné predvolené hodnoty v dotaze, ale hodnoty dosadené vzťahom sú často správne. Pretože priraďovanie a spájanie údajov z viacerých tabuliek je niečo, čo budete robiť často vo všetkých najjednoduchších databázach, nastavenie predvolených hodnôt vytvorením vzťahov môže byť čas výhodné a šetrí.

Dotaz pre viaceré tabuľky kombinuje informácie z viacerých tabuliek priradením hodnôt do aktuálnych polí. Operácia, ktorá vykonáva priradenie a kombinovanie, sa nazýva spájanie. Predpokladajme napríklad, že chcete zobraziť objednávky zákazníkov. Vytvoríte dotaz, ktorý spája tabuľku Zákazníci s tabuľkou Objednávky v poli Identifikácia zákazníka. Výsledok dotazu obsahuje údaje o zákazníkovi a objednávke iba pre tie riadky, kde sa zistil zodpovedajúci výskyt.

Jedna z hodnôt, ktoré môžete určiť pre každý vzťah je typ spojenia. Typ spojenia informuje program Access, ktorý záznam má zahrnúť do výsledku dotazu. Napríklad, Uvažujme opäť dotaz, ktorý spája tabuľku Zákazníci s tabuľkou a tabuľkou objednávky v aktuálnych poliach, ktoré predstavujú identifikáciu zákazníka. Pomocou predvoleného typu spojenia (nazýva vnútorné spojenie), dotaz vráti iba riadky tabuľky Zákazníci a riadky tabuľky objednávky, kde sú spoločné polia (tiež nazývajú spojené polia) rovnaké.

Predpokladajme však, že chcete zahrnúť všetkých zákazníkov, dokonca aj tých, ktorí ešte nezadali žiadne objednávky. Ak chcete vykonať túto operáciu, musíte zmeniť typ spojenia z vnútorného na typ, ktorý sa nazýva vonkajšie spojenie zľava. Vonkajšie spojenie zľava vráti všetky riadky z tabuľky na ľavej strane vzťahu a iba tie riadky, ktoré sú im priradené v tabuľke na pravej strane. Vonkajšie spojenie sprava vráti všetky riadky na pravej strane vzťahu a iba tie riadky, ktoré sú im priradené na ľavej strane vzťahu.

Poznámka : V tomto prípade sa výrazy „ľavý“ a „pravý“ vzťahujú na umiestnenie tabuliek v dialógovom okne Úprava vzťahov, nie v okne Vzťahy.

Mali by ste si premyslieť, ktoré výsledky budete potrebovať najčastejšie z dotazu, ktorý spája tabuľky v tomto vzťahu, a potom nastaviť podľa toho typ spojenia.

Nastavenie typu spojenia

  1. V dialógovom okne Úprava vzťahov kliknite na položku Typ spojenia.

    Zobrazí sa dialógové okno Spojenie – vlastnosti.

  2. Kliknite na požadovanú možnosť a potom kliknite na tlačidlo OK.

Nasledujúca tabuľka (používajúca tabuľky Zákazníci a objednávky) zobrazuje tri možnosti, ktoré sú zobrazené v poli dialógové okno Vlastnosti spojenia, typ spojenia, ktoré používajú, a či všetky alebo len zhodné riadky sú zahrnuté v každej tabuľke.

Voľba

Relačné spojenie

Ľavá tabuľka

Pravá tabuľka

1. Zahrnúť iba riadky, v ktorých sú spojené polia z obidvoch tabuliek rovnaké.

Vnútorné spojenie

Zhodné riadky

Zhodné riadky

2. Zahrnúť VŠETKY záznamy z tabuľky Zákazníci a iba tie záznamy z tabuľky Objednávky, v ktorých sú spojené polia rovnaké.

Vonkajšie spojenie zľava

Všetky riadky

Zhodné riadky

3. Zahrnúť VŠETKY záznamy z tabuľky Objednávky a z tabuľky Zákazníci iba tie záznamy, v ktorých sú spojené polia rovnaké.

Vonkajšie spojenie sprava

Zhodné riadky

Všetky riadky

Keď vyberiete druhú alebo tretiu možnosť, zobrazí sa na čiare vzťahu šípka. Táto šípka ukazuje na tú stranu vzťahu, ktorá zobrazuje iba zhodné riadky.

Vykonanie zmien v dialógovom okne Spojenie – vlastnosti

  1. Na karte Databázové nástroje v skupine Vzťahy kliknite na položku Vzťahy.

Zobrazí sa okno vzťahy. Ak ste ešte nedefinovali žiadne vzťahy a to je prvýkrát otvárate okno vzťahy, zobrazí sa dialógové okno Zobrazenie tabuľky. Ak sa zobrazí dialógové okno, kliknite na tlačidlo Zavrieť.

  • Na karte Návrh v skupine Vzťahy kliknite na položku Všetky vzťahy.

    Zobrazia sa všetky tabuľky, ktoré majú vzťahy, a zobrazia sa aj čiary vzťahov.

  • Kliknite na čiaru vzťahu pre vzťah, ktorý chcete zmeniť. Vybratá čiara vzťahu sa zobrazuje ako hrubšia.

  • Dvakrát kliknite na čiaru vzťahu.

Zobrazí sa dialógové okno Úprava vzťahov.

  1. Kliknite na položku Typ spojenia.

  2. V dialógovom okne Spojenie – vlastnosti vyberte niektorú z možností a potom kliknite na tlačidlo OK.

  3. Vykonajte všetky ostatné zmeny vzťahu a potom kliknite na tlačidlo OK.

Na začiatok stránky

Zabezpečenie referenčnej integrity

Cieľom použitia referenčnej integrity je zabrániť vzniku osamotených záznamov, a zachovať synchronizáciu odkazov tak, aby nemáte žiadne záznamy, ktoré odkazujú na neexistujúce záznamy, ktoré už neexistujú. Zabezpečiť referenčnú integritu zabezpečíte povolením vzťahu tabuliek. Po zabezpečení program Access odmietne všetky operácie, ktoré by narušili referenčnú integritu pre tento vzťah tabuliek. Program Access odmietne aktualizácie, ktoré menia cieľ odkazu a odstránené položky, ktoré odstraňujú cieľ odkazu. Aby program Access vopred vyplnil referenčné aktualizácie a odstránenia tak, aby sa všetky súvisiace riadky podľa toho zmenili, pozrite časť Nastavenie možnosti kaskády.

Zapnutie alebo vypnutie referenčnej integrity

  1. V okne Vzťahy kliknite na čiaru vzťahu, ktorý chcete zmeniť. Vybratá čiara vzťahu sa zobrazuje ako hrubšia.

  2. Dvakrát kliknite na čiaru vzťahu.

Zobrazí sa dialógové okno Úprava vzťahov.

  1. Začiarknite políčko Zabezpečiť referenčnú integritu.

  2. Vykonajte všetky ostatné zmeny vzťahu a potom kliknite na tlačidlo OK.

Po zabezpečení referenčnej integrity platia nasledujúce pravidlá:

  • Do poľa cudzieho kľúča v súvisiacej tabuľke nemôžete zadať hodnotu, ak rovnaká hodnota neexistuje v poli primárneho kľúča v primárnej tabuľke. To by spôsobilo vznik osamotených záznamov.

  • Z hlavnej tabuľky nemôžete odstrániť záznam, ak existujú zhodné záznamy v súvisiacej tabuľke. Nemôžete napríklad odstrániť záznam zamestnanca z tabuľky Zamestnanci, ak má tento zamestnanec priradené objednávky v tabuľke Objednávky. Môžete sa však rozhodnúť, že jednou operáciou odstránite hlavný záznam a všetky súvisiace záznamy tak, že začiarknete políčko Kaskádové odstránenie súvisiacich záznamov.

  • Nie je možné zmeniť hodnotu hlavného kľúča v hlavnej tabuľke, ak by to spôsobilo osamotených záznamov. Nemôžete napríklad zmeniť číslo objednávky v tabuľke objednávky, ak existujú položky čiar priradené tejto objednávke v tabuľke Podrobnosti objednávky. Však môžete aktualizovať hlavný záznam a všetky súvisiace záznamy v rámci jednej operácie začiarknutím políčka Kaskádová aktualizácia súvisiacich polí.

    Poznámky : Ak máte problémy s povolením referenčnej integrity, nezabúdajte, že zabezpečenie referenčnej integrity sa vyžadujú nasledovné podmienky:

    • Spoločné pole z hlavnej tabuľky musí byť primárnym kľúčom alebo musí mať jedinečný index.

    • Spoločné polia musia mať rovnaký typ údajov. Jedinou výnimkou je možnosť spojiť pole automatického číslovania s číselným poľom, ktoré má pre vlastnosť VeľkosťPoľa nastavenú hodnotu Dlhé celé číslo.

    • Obidve tabuľky musia existovať v rovnakej databáze programu Access. Referenčná integrita sa nemôže zabezpečiť na prepojených tabuľkách. Avšak, ak zdrojové tabuľky vo formáte programu Access, môžete otvoriť databázu, v ktorej sú uložené, a povoliť referenčnú integritu v danej databáze.

Nastavenie možností kaskádovania

Môže nastať situácia, v ktorej budete mať opodstatnenú požiadavku zmeniť hodnotu na strane "one" vzťahu. V takom prípade budete potrebovať prístup k automaticky aktualizoval všetky ovplyvnené riadky ako súčasť jednej operácie. Týmto spôsobom sa aktualizácia dokončila v plnej výške tak, aby databáza nezostala v nekonzistentnom stave – s niektorými riadkami aktualizovanými a niektorými nie. Prístup vám pomôže vyhnúť sa tento problém tým, že podporuje možnosť Kaskádová aktualizácia súvisiacich polí. Keď referenčnú integritu a vybrať možnosť Kaskádová aktualizácia súvisiacich polí, a potom aktualizovať hlavný kľúč, Access automaticky aktualizovať všetky polia, ktoré odkazujú na hlavný kľúč.

Môžete tiež potrebovať odstrániť riadok a všetky súvisiace záznamy – napríklad záznam o špeditérovi a všetky súvisiace objednávky pre tohto špeditéra. Z tohto dôvodu program Access podporuje možnosť kaskádové odstránenie súvisiacich záznamov. Keď referenčnú integritu a vybrať možnosť kaskádové odstránenie súvisiacich záznamov, program Access automaticky odstráni všetky záznamy, ktoré odkazujú na hlavný kľúč, keď odstránite záznam, ktorý obsahuje hlavný kľúč.

Zapnutie alebo vypnutie kaskádovej aktualizácie a kaskádového odstránenia

  1. V okne Vzťahy kliknite na čiaru vzťahu, ktorý chcete zmeniť. Vybratá čiara vzťahu sa zobrazuje ako hrubšia.

  2. Dvakrát kliknite na čiaru vzťahu.

Zobrazí sa dialógové okno Úprava vzťahov.

  1. Začiarknite políčko Zabezpečiť referenčnú integritu.

  2. Začiarknite políčko Kaskádová aktualizácia súvisiacich polí, políčko Kaskádové odstránenie súvisiacich záznamov alebo obidve políčka.

  3. Vykonajte všetky ostatné zmeny vzťahu a potom kliknite na tlačidlo OK.

Poznámka : Ak je hlavný kľúč poľom s automatickým číslovaním, začiarknutie políčka Kaskádová aktualizácia súvisiacich polí nebude mať žiadny účinok, pretože hodnotu v poli s automatickým číslovaním nemožno zmeniť.

Na začiatok stránky

Poznámka : Vyhlásenie týkajúce sa strojového prekladu: Tento článok bol preložený počítačovým systémom bez zásahu človeka. Poskytovaním týchto strojových prekladov umožňuje spoločnosť Microsoft aj používateľom, ktorí nehovoria po anglicky, využívať obsah o produktoch, službách a technológiách spoločnosti Microsoft. Článok bol preložený strojovo, môže preto obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky.

Rozšírte svoje zručnosti
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pridajte sa k insiderom pre Office

Boli tieto informácie užitočné?

Ďakujeme za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×