Sprievodca vzťahmi tabuliek

Poznámka: Radi by sme vám čo najrýchlejšie poskytovali najaktuálnejší obsah Pomocníka vo vašom vlastnom jazyku. Táto stránka bola preložená automaticky a môže obsahovať gramatické chyby alebo nepresnosti. Naším cieľom je, aby bol tento obsah pre vás užitočný. Dali by ste nám v dolnej časti tejto stránky vedieť, či boli pre vás tieto informácie užitočné? Tu nájdete anglický článok pre jednoduchú 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, aby každý fakt predstavuje iba raz. Potom poskytnete prístup prostriedky, pomocou ktorých spojiť rozdelené informácie – urobíte to umiestnením aktuálnych polí do tabuliek, ktoré sa týkajú. Na vykonanie tohto kroku správne, musíte najprv pochopiť vzťahy medzi tabuľkami a zadajte tieto vzťahy v databáze.

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

V tomto článku sa neopisuje vzťahy vo webovej databáze. Webových databázach nepodporujú okno vzťahy. Vytvorenie vzťahov vo webovej databáze pomocou vyhľadávacích polí. Ďalšie informácie nájdete v článku Vytvorenie databázy na zdieľanie na webe.

Obsah tohto č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 tabuliek

Zmena vzťahu tabuliek

Zabezpečenie 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ť tieto informácie znova podľa potreby. Urobíte to umiestnením aktuálnych polí do tabuliek, ktoré navzájom 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 znázornené nižšie 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“

    Vezmite do úvahy poradie sledovanie databázy, ktorá obsahuje tabuľku Zákazníci a tabuľku objednávky. Zákazníka môžete umiestniť iné číslo objednávky. Nasleduje ho, že každý zákazník uvedený v tabuľke Customers, môže byť veľa objednávok uvedených v tabuľke objednávky. Vzťah medzi tabuľku Zákazníci a na tabuľku objednávky je preto vzťahu one-to-many.

    Ak chcete vyjadriť v návrhu databázy vzťah one-to-many, použite hlavný kľúč na strane "one" vzťahu a pridajte ho ako ďalšie pole alebo polia do tabuľky na strane vzťahu "many". 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 nazvite ju ID zákazníka. Program Access môžete potom použiť identifikačné číslo zákazníka v tabuľke objednávky na vyhľadanie správneho zákazníka pre každú objednávku.

  • Vzťah „many-to-many“

    Vezmite do úvahy vzťah medzi tabuľkou produkty a objednávky. Jedna objednávka môže obsahovať viac ako jeden produkt. Na druhej strane jedného produktu môžete zobraziť na viacerý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 vzťahu many-to-many, pretože pre všetky produkty, môže byť veľa objednávok a pre každú objednávku môže mať veľa produktov. Všimnite si, že na zistenie existujúcich many-to-many vzťahy medzi tabuľkami, je dôležité, aby 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“

    Vo vzťahu "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, informácie súvisiace s týmto spôsobom sú uložené v tej istej tabuľke. Vzťahu "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 na ukladanie informácií, ktoré sa vzťahuje výlučne na 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žije vzťahov medzi tabuľkami získať informácie o spôsoboch spájania tabuliek, keď je potrebné ich použitia v databázového objektu. Existuje niekoľko dôvodov, prečo by ste mali vytvoriť vzťahy 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 tabuľky. Dotaz funguje na základe priradenia hodnoty v pole hlavného kľúča prvej tabuľky s poľa cudzieho kľúča v druhej tabuľke. Napríklad, ak chcete 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, ktorý je založený na pole Identifikácia zákazníka. V okne vzťahy môžete manuálne určiť polia, ktoré chcete pripojiť. Ak už máte určené vzťahy medzi tabuľkami, program Access doplní však predvolené spojenie na základe existujúceho vzťahu tabuliek. Okrem toho, ak chcete použiť niektorú zo sprievodcov dotazom, Access používa informácie, ktoré získa zo vzťahov tabuliek, ktoré ste už určili, aby ste informovaní 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

    Pri návrhu formulára alebo zostavy, program Access použije informácie, ktoré získa zo vzťahov tabuliek, ktoré ste už určili, aby ste informovaní 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ľúč. Môžete pridať cudzích kľúčov súvisiacich tabuliek, ktoré odkazujú na tieto hlavné kľúče. Tieto cudzích kľúčov tvoria základ vzťahov tabuliek a dotazov viacerých tabuliek. Je dôležité, preto, že tieto kľúčové odkazy na cudzích kľúčov zostali synchronizované. Referenčná integrita pomáha zabezpečiť, že synchronizáciu odkazov a závisí od vzťahov medzi tabuľkami.

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 prostriedkov, pomocou ktorých má spojiť údaje umiestnením bežné polia do súvisiacich tabuliek. Napríklad predstavujú vzťahu one-to-many použite hlavný kľúč z tabuľky "one" a pridajte ho ako ďalšie pole do tabuľky "many". Ak chcete spojiť údaje, program Access vyberie hodnotu v tabuľke "many" a vyhľadá zodpovedajúce hodnoty 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čení referenčnej integrity povolením vzťahu tabuliek (pozrite tému zabezpečenie referenčnej integrity podrobné pokyny). Po zabezpečení program Access odmietne všetky operácie, ktoré by porušovať referenčnej integrity pre daný vzťah tabuliek. Znamená to, že program Access odmietne aktualizácie, ktoré menia cieľ odkazu a odstránené položky, ktoré odstraňujú cieľ odkazu. Je však možné môže mať úplne platné potrebné zmeniť hlavný kľúč pre odosielateľa, ktorý má objednávky v tabuľke objednávky. V takýchto prípadoch naozaj potrebujete je pre program Access automaticky aktualizoval všetky ovplyvnené riadky ako súčasť jednej operácie. Tak, prístup zabezpečuje, že aktualizácia dokončí úplne tak, aby databázu nie v rozpore stave s niektorými riadkami aktualizovanými a niektoré nie. Z tohto dôvodu program Access podporuje možnosť Kaskádová aktualizácia súvisiacich polí. Keď zabezpečenie referenčnej integrity a vyberte možnosť Kaskádová aktualizácia súvisiacich polí, a potom aktualizujte hlavný kľúč, Access automaticky aktualizuje všetky polia, ktoré odkazujú na hlavný kľúč.

Je tiež možné, že máte platný potrebné odstrániť riadok a všetky súvisiace záznamy – napríklad odosielateľ záznam a všetky súvisiace objednávky pre tohto odosielateľa. Z tohto dôvodu program Access podporuje možnosť kaskádové odstránenie súvisiacich záznamov. Keď zabezpečenie referenčnej integrity a vyberte 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. Kliknite 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. Nezabúdajte, že skryté tabuľky (tabuľky, pre ktoré políčka skryté v tabuľke Vlastnosti dialógové okno je začiarknuté) a ich vzťahy sa zobrazia až je začiarknuté políčko Zobraziť skryté objekty v navigácie Možnosti dialógové okno.

Č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 cudzí kľúč poľa) musí mať jedinečný index. Znamená to, že vlastnosť poľa indexované pre tieto polia nastavená na hodnotu Áno (bez duplicít). Ak majú obe polia jedinečný index, program Access vytvorí vzťahu "one-to-one".

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

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

Pole môžete pridať do existujúcej tabuľky, ktorá je otvorená v údajovom zobrazení aj myšou 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 "iné" (nesúvisiacej) tabuľky a potom dokončite Sprievodcu vyhľadávaním, nový vzťah one-to-many sa automaticky vytvorí medzi tabuľkou na table Zoznam polí a tabuľku, do ktorej ste presunuli pole. Tento vzťah vytvorený programom Access nie zabezpečenie referenčnej integrity v predvolenom nastavení. Ak chcete zabezpečiť referenčnú integritu, musíte upraviť vzťah. Prejdite na časť Zmena vzťahu tabuliek ďalšie informácie.

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í table sa zobrazia všetky ostatné tabuľky v databáze, zoskupené podľa kategórií. Pri práci s tabuľku v údajovom zobrazení, program Access zobrazí polia v obidvoch kategóriách na 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, ktorou práve pracujete. Druhá kategória zobrazuje všetky tabuľky, s ktorými 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 "iné" (nesúvisiacej) tabuľky a potom dokončite Sprievodcu vyhľadávaním, nový vzťah one-to-many sa automaticky vytvorí medzi tabuľkou v Zozname polí a tabuľku, do ktorej ste presunuli pole. Tento vzťah vytvorený programom Access nie zabezpečenie referenčnej integrity v predvolenom nastavení. Ak chcete zabezpečiť referenčnú integritu, musíte upraviť vzťah. Prejdite na časť Zmena vzťahu tabuliek ďalšie informácie.

Na začiatok stránky

Odstránenie vzťahu tabuliek

Ak chcete odstrániť vzťah medzi tabuľkami, musíte odstrániť na č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 ako hrubšia, je vybraná. Vybratú čiaru vzťahu, stlačte kláves DELETE. Všimnite si, že keď odstránite vzťah, odstránite tiež podporu referenčnej integrity pre vzťah, ak je povolená. Ako výsledok, prístup sa nebude automaticky zabraňovať vytvoreniu záznamov bez párov na strane vzťahu "many".

  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 neurčili žiadne vzťahy a po prvý raz otvoríte 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, č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 neurčili žiadne vzťahy a po prvý raz otvoríte 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, č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

Pri definovaní vzťahu medzi tabuľkami, informácie o vzťahu podkladom pre návrhy dotazov. Napríklad, ak definovanie vzťahu medzi dvoma tabuľkami, a potom vytvorte dotaz, ktorý používa tieto tabuľky, program Access automaticky vyberie predvolené priradené polia na základe polí zadaných vo vzťahu. Môžete zmeniť tieto počiatočné hodnoty v dotaze, ale hodnoty poskytla vzťah sú často správne. Pretože priraďovanie a spájanie údajov z viacerých tabuliek je niečo budete robiť často vo všetkých, ale najjednoduchšie databáz, 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.

Jednou z hodnôt môžete určiť pre každý vzťah je typ spojenia. Typ spojenia informuje program Access, ktoré záznamy sa majú zahrnúť do výsledkov dotazu. Príklad znova dotaz, ktorý spája tabuľku Zákazníci a na tabuľku objednávky na bežné polia, ktoré súvisia s ID zákazníka. Pomocou predvoleného typu spojenia (nazývané vnútorné spojenie), dotaz vráti iba riadky tabuľky Zákazníci a riadky tabuľky objednávky na miesto, kde sú rovnaké bežné polia (nazývané aj Spojených polí).

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 (pomocou tabuľky Zákazníci a objednávky) obsahuje tri možnosti, ktoré sú zobrazené v dialógovom okne Vlastnosti spojenia, typ spojenia, ktoré používajú, a či sa 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

Zodpovedajúce riadky

Zodpovedajúce 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

Zodpovedajúce 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 neurčili žiadne vzťahy a po prvý raz otvoríte 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 pripojiť sa k typu

  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

Účel používania referenčnej integrity je zabrániť záznamov bez párov a zachovať synchronizáciu odkazov tak, aby nemáte k dispozícii všetky záznamy, ktoré odkazujú na iné záznamy, ktoré už nie sú zadané. Zabezpečenie referenčnej integrity povolením vzťahu medzi tabuľkami. Po zabezpečení program Access odmietne všetky operácie, ktoré by porušovať referenčnej integrity pre daný vzťah tabuliek. Program Access odmietne aktualizácie, ktoré menia cieľ odkazu a odstránené položky, ktoré odstraňujú cieľ odkazu. Umožniť prístup rozšíriť referenčnej aktualizácie a odstránené položky tak, aby sa všetky súvisiace riadky sa zmenia zodpovedajúcim spôsobom, nájdete v časti Nastavenie možností kaskádovania.

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.

  • Ak inak by ste vytvorili záznamov bez párov je možné zmeniť hodnotu hlavného kľúča v hlavnej tabuľke. Napríklad, nie je možné 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 sa vyžadujú nasledovné podmienky na zabezpečenie referenčnej integrity:

    • 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 sa musí nachádzať v tej istej databázy programu Access. Referenčná integrita sa nemôže zabezpečiť na prepojených tabuľkách. Vš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ôžu sa vyskytnúť situácie, v ktorej máte platné potrebné zmeniť hodnotu na strane "one" vzťahu. V takomto prípade budete potrebovať prístup k automaticky aktualizovať všetky ovplyvnené riadky ako súčasť jednej operácie. Týmto spôsobom, aktualizácia dokončí úplne tak, aby databázu nie v rozpore stave – s niektorými riadkami aktualizovanými a niektoré nie. Prístup pomáha vyhnúť tomuto problému tým, že podporuje možnosť Kaskádová aktualizácia súvisiacich polí. Keď zabezpečenie referenčnej integrity a vyberte možnosť Kaskádová aktualizácia súvisiacich polí, a potom aktualizujte hlavný kľúč, Access automaticky aktualizuje všetky polia, ktoré odkazujú na hlavný kľúč.

Musíte tiež odstrániť riadok a všetky súvisiace záznamy – napríklad odosielateľ záznam a všetky súvisiace objednávky pre tohto odosielateľa. Z tohto dôvodu program Access podporuje možnosť kaskádové odstránenie súvisiacich záznamov. Keď zabezpečenie referenčnej integrity a vyberte 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

Rozšírte svoje zručnosti práce s balíkom Office
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.

×