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ť nadbytok údajov (duplicitné údaje). Ak chcete dosiahnuť tento cieľ, rozdelíte údaje do viacerých tematických tabuliek tak, aby všetky fakty boli vyjadrené len raz. Potom poskytnete programu Microsoft Office Access 2007 prostriedky, pomocou ktorých sa majú spojiť rozdelené informácie – urobíte to umiestnením aktuálnych polí do tabuliek, ktoré navzájom súvisia. Ak chcete vykonať 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 programu Office Access 2007.

Obsah tohto článku

Úvodné informácie

Typy vzťahov tabuliek

Dôvody na vytváranie vzťahov medzi tabuľkami?

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úť programu Office Access 2007 prostriedky, pomocou ktorých má tieto informácie znova podľa potreby spojiť. 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, ktorý je uvedený 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 – často je to pole s tým istým názvom v obidvoch tabuľkách. Vo väčšine prípadov predstavujú tieto priradené polia hlavný 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žiť ako hlavný kľúč v tabuľke zamestnanci a cudzí kľúč v tabuľke objednávky.

1. Identifikácia zamestnanca je zobrazená v obidvoch tabuľkách – ako hlavný 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“

    Uvažujme o databáze sledovania objednávok, 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 „one-to-many“.

    Ak chcete vyjadriť v návrhu databázy vzťah „one-to-many“, 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 pomenujete ho Identifikácia zákazníka. Program Access 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 sa 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 „many-to-many“, 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. Nezabúdajte, že ak chcete zistiť existujúci vzťah „many-to many“ medzi tabuľkami, je dôležité vziať do úvahy obidve strany 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“ môže mať každý záznam v prvej tabuľke 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ýkajú 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

Prečo je potrebné vytvárať vzťahy tabuliek?

Vzťahy tabuliek môžete vytvoriť explicitne pomocou okna vzťahy alebo presunutím poľa z tably Zoznam polí. Office Access 2007 používa vzťahy tabuliek na určenie spôsobu 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, makrá 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 priraďuje hodnoty v poli hlavného kľúča prvej tabuľky poľu cudzieho kľúča v druhej tabuľke. Ak chcete napríklad prejsť na riadky zoznamu všetkých objednávok pre všetkých zákazníkov, vytvoríte dotaz, ktorý spojí 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é sa majú spojiť. Ak však už máte určené vzťahy medzi tabuľkami, program Office Access 2007 poskytne 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, ktoré získa zo vzťahov tabuliek, ktoré 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 Office Access 2007 používa informácie získané zo vzťahov tabuliek, ktoré 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. Tieto páry hlavných a cudzích kľúčov tvoria základ vzťahov tabuliek a dotazov pre viaceré tabuľky. Preto je dôležité, aby tieto odkazy hlavných a cudzích kľúčov zostali synchronizované. Referenčná integrita pomáha zabezpečiť synchronizáciu odkazov a závisí od vzťahov tabuliek.

Na začiatok stránky

Princípy 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 programu Office Access 2007 prostriedky, pomocou ktorých má spojiť údaje umiestnením aktuálnych polí do súvisiacich tabuliek. Ak chcete napríklad vyjadriť vzťah „one-to-many“, zoberiete hlavný kľúč z tabuľky „one“ a pridáte ho ako ďalšie pole do tabuľky „many“. Program Access vyberie hodnotu v tabuľke „many“ a vyhľadá zodpovedajúcu hodnotu v tabuľke „one“, aby spojil údaje. 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 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ď zabezpečíte referenčnú integritu a vyberiete 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 Nástroje databázy. 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. Kliknite na tlačidlo Microsoft Office Vzhľad tlačidla Office a potom na položku Otvoriť.

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

  3. Na karte Nástroje databázy v skupine Zobraziť/Skryť 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 prvýkrát, zobrazí sa dialógové okno Zobrazenie tabuľky. Ak chcete zavrieť dialógové okno, kliknite na tlačidlo Zavrieť.

  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, ktoré majú začiarknuté políčko Skryté vo svojom okne Vlastnosti) a ich vzťahy sa zobrazia až po začiarknutí políčka Zobraziť skryté objekty v dialógovom okne Možnosti navigácie.

    Ďalšie informácie o možnosti Zobraziť skryté objekty nájdete v článku Sprievodca navigačnou tablou.

okno Vzťahy

1. Hlavný kľúč

2. Táto čiara predstavuje vzťah

3. Cudzí kľúč

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

Keď je okno Vzťahy aktívne, na páse s nástrojmi (súčasti rozhrania Microsoft Office Fluent user interface) môžete vybrať nasledovné 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úvisiacich tabuliek v databáze v okne vzťahy. Všimnite si, ž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ž po výbere možnosti Zobraziť skryté tabuľky v dialógovom okne Možnosti navigácie.

    Ďalšie informácie o možnostiach Zobraziť skryté tabuľky nájdete v článku Sprievodca navigačnou tablou.

  • 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 tabuliek

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, aktuálne polia nemusia mať rovnaké názvy, hoci ich často majú. Presnejšie, tieto polia musia mať ten istý typ údajov. Ak je hlavný 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 číselnému poľu, ak je vlastnosť VeľkosťPoľa obidvoch polí Long Integer. Keď sú obidve aktuálne polia číselnými poľami, musia mať rovnaké nastavenie vlastnosti VeľkosťPoľa.

Vytvorenie vzťahu tabuliek pomocou okna Vzťahy

  1. Kliknite na tlačidlo Microsoft Office Vzhľad tlačidla Office a potom na položku Otvoriť.

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

  3. Na karte Nástroje databázy v skupine Zobraziť/Skryť 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.

  5. 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ť.

  6. 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.

  7. 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 zabezpečiť referenčnú integritu pre tento vzťah, začiarknite políčko Zabezpečiť referenčnú integritu. Ďalšie informácie o referenčnej integrity, v téme Princípy referenčnej Integrity a v častiach Zabezpečiť referenčnú integritu .

  8. Kliknite na prepojenie Vytvoriť.

    Čiara vzťahu je nakreslená medzi dvomi tabuľkami. Ak ste začiarkli políčko Zabezpečiť referenčnú integritu, čiara sa zobrazí ako hrubšia na obidvoch koncoch. Okrem toho, iba ak ste začiarkli políčko Zabezpečiť referenčnú integritu, číslica 1 sa zobrazí nad hrubou časťou čiary na jednej strane vzťahu a symbol nekonečna ) sa zobrazí nad hrubou časťou čiary na druhej strane.

Presuňte myšou pole z jednej tabuľky do zodpovedajúceho poľa inej tabuľky

Poznámky : 

  • Vytvorenie vzťahu „one-to-one“    . Obidve aktuálne polia (zvyčajne polia hlavného kľúča a cudzieho kľúča) musia mať jedinečný index. To znamená, že vlastnosť poľa Indexované by mala byť nastavená pre tieto polia na hodnotu Áno (bez duplicít). Ak majú obidve polia jedinečný index, program Access vytvorí vzťah „one-to-one“.

  • Vytvorenie vzťahu „one-to-many“    . Pole na strane „one“ tohto vzťahu (väčšinou hlavný kľúč) musí mať jedinečný index. To znamená, že vlastnosť poľa Indexované by mala byť pre toto pole nastavená na hodnotu Áno (bez duplicít). Pole na strane „many“ by nemalo mať jedinečný index. Môže mať index, ale musí povoľovať duplicity. To znamená, že vlastnosť poľa Indexované by pre toto pole mala byť nastavená na hodnotu Žiadne alebo Áno (duplicity povolené). Keď má jedno pole jedinečný index a druhé nemá, program Access vytvorí vzťah „one-to-many“.

Vytvorenie vzťahu tabuliek pomocou tably Zoznam polí

V Office Access 2007, môžete pridať pole 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. Kliknite na tlačidlo Microsoft Office Vzhľad tlačidla Office a potom 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čidlo myši na tabuľku, do ktorej chcete pridať pole a pre ktorú chcete vytvoriť vzťah a kliknite na položku Zobraziť údajový hárok v kontextovej ponuke.

Otvorenie tably Zoznam polí

  • Na karte Údajový hárok v skupine Polia a stĺpce kliknite na položku Pridať existujúce polia.

    Pridanie aplikácie

    Zobrazí sa tabla Zoznam polí.

Tabla Zoznam polí zobrazí všetky ďalšie tabuľky v 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. V prvej kategórii je uvedený zoznam všetkých tabuliek, ktoré majú vzťah s tabuľkou, s ktorou aktuálne pracujete. V druhej kategórii je uvedený zoznam všetkých tabuliek, s ktorými táto 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í dostupných v tejto tabuľke. Ak chcete pridať do tabuľky pole, presuňte požadované pole z tably Zoznam polí do tabuľky v údajovom zobrazení.

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

  1. Na karte Údajový hárok v skupine Polia a stĺpce kliknite na položku Pridať existujúce polia.

    Pridanie aplikácie

    Zobrazí sa tabla Zoznam polí.

  2. Ak chcete zobraziť zoznam polí v danej tabuľke, v kategórii Polia dostupné v iných tabuľkách kliknite na znamienko plus (+) vedľa názvu tabuľky.

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

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

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

  5. Dokončite Sprievodcu 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 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. Vybratá čiara vzťahu sa zobrazuje ako hrubšia. Keď je čiara vzťahu vybratá, stlačte kláves DELETE. Nezabúdajte, že keď odstránite vzťah, odstránite tiež podporu referenčnej integrity pre daný vzťah (ak je povolená). V dôsledku toho program Access už nebude automaticky zabraňovať vytvoreniu záznamov bez párov na strane „many“ tohto vzťahu.

  1. Kliknite na tlačidlo Microsoft Office Vzhľad tlačidla Office a potom na položku Otvoriť.

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

  3. Na karte Nástroje databázy v skupine Zobraziť/Skryť kliknite na položku Vzťahy.

Zobrazí sa okno Vzťahy.

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

  1. 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 tlačidlo Odstrániť.

  3. 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 tabuľky

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.

Vykonajte zmeny v dialógovom okne Úprava vzťahov

  1. Kliknite na tlačidlo Microsoft Office Vzhľad tlačidla Office a potom na položku Otvoriť.

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

  3. Na karte Nástroje databázy v skupine Zobraziť/Skryť kliknite na položku Vzťahy.

Zobrazí sa okno Vzťahy.

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

  1. 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. 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.

Ďalšie informácie o možnosti Zobraziť skryté objekty nájdete v článku Sprievodca navigačnou tablou.

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

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

    alebo

    Na karte Návrh v skupine Nástroje kliknite na položku Úprava vzťahov.

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

    Dialógové okno vzťahy

  3. Vykonajte zmeny a kliknite na tlačidlo OK.

    Dialógové okno Úprava vzťahov vám umožní zmeniť vzťah medzi tabuľkami. Konkrétne, môžete zmeniť tabuľky alebo dotazy na oboch stranách vzťahu alebo polí na oboch stranách. Môžete nastaviť typ spojenia alebo zabezpečiť referenčnú integritu a vybrať možnosť kaskádovania. Ďalšie informácie o type spojenia a ako ju nastaviť, nájdete v časti Nastavenie typu spojenia. Ďalšie informácie o tom, ako zabezpečiť referenčnú integritu a vybrať možnosť kaskádovania nájdete v časti zabezpečenie referenčnej integrity.

Nastavenie typu spojenia

Keď určujete vzťah tabuliek, podkladom pre návrhy dotazov sú fakty o vzťahu. Ak napríklad určujete vzťah medzi dvomi tabuľkami a potom vytvoríte dotaz, ktorý používa tieto tabuľky, program Access automaticky vyberie predvolené priradené polia na základe polí určených vo vzťahu. Tieto počiatočné predvolené hodnoty môžete v dotaze prepísať, ale hodnoty dosadené vzťahom sú často správne. Pretože priraďovanie a spájanie údajov z viacerých tabuliek je činnosťou, ktorú budete robiť často vo všetkých najjednoduchších databázach, nastavenie predvolených hodnôt vytvorením vzťahov je výhodné a šetrí čas.

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 poskytne programu Access informáciu, ktorý záznam má zahrnúť do výsledku dotazu. Uvažujme opäť napríklad o dotaze, ktorý spája tabuľku Zákazníci s tabuľkou Objednávky v aktuálnych poliach, ktoré predstavujú identifikáciu zákazníka. Pomocou predvoleného typu spojenia, (ktoré sa nazýva vnútorné spojenie), dotaz vráti iba riadky tabuľky Zákazníci a riadky tabuľky Objednávky na mieste, kde sú aktuálne polia, (ktoré sa tiež nazývajú spojené polia), rovnaké.

Predpokladajme však, že chcete zahrnúť všetkých zákazníkov – dokonca aj tých, ktorí zatiaľ 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 ľavé vonkajšie spojenie. Ľavé vonkajšie spojenie vráti všetky riadky z tabuľky na ľavej strane vzťahu a iba tie riadky, ktoré sú im priradené na pravej strane tabuľky. Pravé vonkajšie spojenie 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) uvádza tri možnosti, ktoré sú zobrazené v dialógovom okne Vlastnosti spojenia, typ spojenia, ktoré používajú, a skutočnosť, či sú všetky riadky alebo priradené riadky zahrnuté v každej tabuľke.

Možnosť

Relačné spojenie

Ľavá tabuľka

Pravá tabuľka

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

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 zhodné.

Ľavé vonkajšie spojenie

Všetky riadky

Zodpovedajúce riadky

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

Pravé vonkajšie spojenie

Zodpovedajúce 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. Kliknite na tlačidlo Microsoft Office Vzhľad tlačidla Office a potom na položku Otvoriť.

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

  3. Na karte Nástroje databázy v skupine Zobraziť/Skryť kliknite na položku Vzťahy.

Zobrazí sa okno Vzťahy.

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

  1. 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. 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.

Ďalšie informácie o možnosti Zobraziť skryté objekty nájdete v článku Sprievodca navigačnou tablou.

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

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

    alebo

    Na karte Návrh v skupine Nástroje kliknite na položku Úprava vzťahov.

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

  3. Kliknite na položku Typ spojenia

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

    Dialógové okno Spojiť vlastnosti

  5. 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. Kliknite na tlačidlo Microsoft Office Vzhľad tlačidla Office a potom na položku Otvoriť.

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

  3. Na karte Nástroje databázy v skupine Zobraziť/Skryť kliknite na položku Vzťahy.

Zobrazí sa okno Vzťahy.

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

  1. 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. 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.

Ďalšie informácie o možnosti Zobraziť skryté objekty nájdete v článku Sprievodca navigačnou tablou.

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

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

    alebo

    Na karte Návrh v skupine Nástroje kliknite na položku Úprava vzťahov.

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

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

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

Po zabezpečení referenčnej integrity platia nasledovné pravidlá:

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

  • Záznam nemožno odstrániť z hlavnej tabuľky, ak v súvisiacej tabuľke existuje zodpovedajúci záznam. Nemôžete napríklad odstrániť záznam o zamestnancovi z tabuľky Zamestnanci, ak existujú objednávky pridelené tomuto zamestnancovi v tabuľke Objednávky. Môžete však odstrániť hlavný záznam a všetky súvisiace záznamy pomocou jednej operácie začiarknutím políčka Kaskádové odstránenie súvisiacich záznamov.

  • Hodnotu hlavného kľúča v hlavnej tabuľke nemožno zmeniť, inak by ste vytvorili záznamy bez párov. Nemôžete napríklad zmeniť poradové číslo v tabuľke Objednávky, ak existujú položky čiar priradené tejto objednávke v tabuľke Podrobnosti objednávky. Môžete však aktualizovať hlavný záznam a všetky súvisiace záznamy pomocou 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 na zabezpečenie referenčnej integrity sa vyžadujú nasledovné podmienky:

    • Aktuálne pole z hlavnej tabuľky musí byť hlavným kľúčom alebo musí mať jedinečný index.

    • Aktuálne polia musia mať ten istý typ údajov. Existuje len jedna výnimka a to, že pole s automatickým číslovaním môže byť spojené s číselným poľom, ktoré má nastavenú vlastnosť VeľkosťPoľa na hodnotu Long Integer.

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

Nastavenie možností kaskády

Môžete sa stretnúť so situáciou, kedy budete mať opodstatnenú požiadavku zmeniť hodnotu na strane „one“ vzťahu. V takom prípade potrebujete, aby program Access automaticky aktualizoval všetky ovplyvnené riadky ako súčasť jednej operácie. Týmto spôsobom sa aktualizácia dokončí úplne, takže databáza nie je ponechaná v nekonzistentnom stave – s niektorými riadkami aktualizovanými a inými nie. Program Access vám pomôže predísť tomuto problému tým, že podporuje možnosť „Kaskádová aktualizácia súvisiacich polí“. Keď zabezpečíte referenčnú integritu a vyberiete možnosť „Kaskádová aktualizácia súvisiacich polí“ a potom budete aktualizovať hlavný kľúč, program Access bude 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ď zabezpečíte referenčnú integritu a vyberiete 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 a vypnutie kaskádovej aktualizácie a kaskádového odstránenia

  1. Kliknite na tlačidlo Microsoft Office Vzhľad tlačidla Office a potom na položku Otvoriť.

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

  3. Na karte Nástroje databázy v skupine Zobraziť/Skryť kliknite na položku Vzťahy.

Zobrazí sa okno Vzťahy.

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

  1. 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. 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.

Ďalšie informácie o možnosti Zobraziť skryté objekty, pozrite si príručku týkajúcu sa na navigačnej table.

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

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

    alebo

    Na karte Návrh v skupine Nástroje kliknite na položku Úprava vzťahov.

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

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

  4. 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.

  5. 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.

×