Schéma přístupu k datům. Schéma databáze v přístupu

Domov / Směrovače

Téma 2.3. Prezentační software a základy kancelářského programování

Téma 2.4. Systémy pro správu databází a expertní systémy

2.4.11. Databáze školení s hlavním tlačítkem formuláře "Training_students" - Stáhnout

DBMS a expertní systémy

2.4. Systémy pro správu databází a expertní systémy

2.4.3. Vytvoření databáze (vytvoření vztahů mezi tabulkami a naplnění tabulek)

2.4.3.2. Navazování vztahů mezi tabulkami v Access DBMS

Po vytvoření struktury tabulek (Studenti, Skupiny studentů, Disciplíny, Akademický postup) pro subjekty databáze "děkanátu" je nutné mezi tabulkami navázat spojení. Vztahy mezi tabulkami v databázi se používají při generování dotazů, vývoji formulářů a vytváření sestav.

Chcete-li vytvořit vztahy, musíte zavřít všechny tabulky a vybrat příkaz "Data Schema" z nabídky Nástroje. Aktivní dialogové okno "Přidat tabulku" se objeví na pozadí neaktivního okna Data Schema.


Rýže. 1.

V dialogovém okně Přidat tabulky, které se objeví, vyberte názvy tabulek a klikněte na tlačítko Přidat a tabulky budou přidány do okna „Datové schéma“. Poté, co se v okně Data Schema objeví všechny tabulky, musíte zavřít okno Přidat tabulku kliknutím levým tlačítkem myši na tlačítko Zavřít.



Rýže. 2.

Dalším krokem je vytvoření vztahů mezi tabulkami v okně Data Schema. Chcete-li to provést, musíte v okně Data Schema přetáhnout (přesunout) pole Kód skupiny z tabulky Skupiny do odpovídajícího pole v tabulce Studenti. V důsledku této operace se zobrazí okno „Změnit odkazy“.

V dialogovém okně "Upravit vztahy", které se objeví, musíte aktivovat zaškrtávací políčka: "Zajistit integritu dat", "kaskádová aktualizace souvisejících polí" a "kaskádové odstranění souvisejících záznamů", ujistěte se, že typ vztahu je nastaven na jeden -to-many a klikněte na tlačítko Vytvořit.



Rýže. 3.

V okně Datové schéma se mezi tabulkami Skupiny studentů a Studenti zobrazí vztah jedna k mnoha. Podobným způsobem je potřeba propojit pole Kód studenta v tabulkách Studenti a Úspěchy a poté pole Kód oboru v tabulkách Úspěchy a Disciplína. V důsledku toho získáme datové schéma zobrazené na obrázku.



Rýže. 4.

Po navázání vztahů mezi tabulkami je třeba zavřít okno Data Schema.

Dále je potřeba vyplnit všechny tabulky. Tabulky je vhodné začít vyplňovat z tabulky Skupiny studentů, protože pole Kód skupiny tabulky Studenti slouží jako náhradní sloupec pro vyplnění odpovídajícího pole v tabulce Studenti.

2.4.3.3. Plnění tabulek

Tabulky můžete začít vyplňovat vyplněním tabulky Studenti. V okně Databáze vyberte požadovanou tabulku a klikněte na tlačítko Otevřít.

Struktura databázové tabulky se objeví na obrazovce v režimu tabulky. Nová tabulka se skládá z jednoho prázdného řádku.


Rýže. 5.

Plnění se provádí podle záznamů, tzn. informace se zadávají pro celý řádek. Pole počítadla se vyplní automaticky. Po zadání prvního záznamu se prázdný záznam přesune na konec tabulky. Přechod na další pole se provádí stisknutím klávesy Tab.

Rýže. 9. Aplikace Access používá různé metody

pohybující se po stole. Mezi záznamem se můžete pohybovat pomocí: kurzorových kláves; tlačítka z oblasti Záznam umístěné ve spodní části tabulky v režimu tabulky; příkazy Edit - Go.. Pro pohyb z pole do pole (zleva doprava) použijte klávesy Tab a Enter a v opačném směru Shift+Tab.

Hledání dat ve velké tabulce pomocí navigačních tlačítek může trvat dlouho, takže k vyhledání a nahrazení dat v polích musíte použít příkaz Upravit - Najít. Otevře se dialogové okno. V poli Ukázka v dialogovém okně hledání se zadá hledaný objekt a provede se hledání. Chcete-li nahradit data v polích, musíte přejít na kartu Nahradit.

Po vytvoření struktury tabulek, jejich vyplnění a navázání vztahů mezi tabulkami můžete začít vytvářet dotazy.

Vztah v Accessu vám pomáhá kombinovat data ze dvou různých tabulek. Každý vztah polí se skládá ze dvou tabulek s odpovídajícími údaji. Můžete mít například pole ProductID v tabulce Products a v tabulce OrderDetails. Každý záznam v tabulce OrderDetails má ProductID, které odpovídá záznamu v tabulce Products se stejným ProductID.

Než začnete pracovat se vztahy, ujistěte se, že rozumíte základním konceptům. Další informace najdete v části Průvodce vztahy mezi tabulkami a Začínáme se vztahy mezi tabulkami.

V tomto článku

Přehled

V databázi Accessu vytvoříte vztah tabulky pomocí jedné z následujících metod:

    V okně Vztahy přidejte tabulky, které chcete propojit, a přetažením pole je spojte z jedné tabulky do druhé.

    Přetáhněte pole do datového listu tabulky z Seznam polí podokno.

Když vytvoříte vztah mezi tabulkami, společná pole nemusí mít stejné názvy, i když se často stává, že mají. Společná pole musí mít stejný datový typ. Pokud je pole primárního klíče polem AutoNumber, může být polem cizího klíče také pole Číslo, pokud Velikost pole vlastnost obou polí je stejná. Můžete například porovnat pole Automatické číslo a pole Číslo, pokud je Velikost pole vlastnost obou polí je Long Integer. Když jsou obě společná pole číselná, musí mít stejná Velikost pole nastavení nemovitosti.

Vytvořte vztah tabulky pomocí okna Relace

Vytvořte vztah tabulky pomocí podokna Seznam polí k přidání pole

Pole můžete přidat do existující tabulky, která je otevřená v zobrazení datového listu, přetažením z Seznam polí podokno. The Seznam polí podokno zobrazuje pole dostupná v souvisejících tabulkách a také pole dostupná v jiných tabulkách v databázi.

Seznam polí podokno a tabulku, do které jste pole přetáhli. Tento vztah vytvořený aplikací Access standardně nevynucuje referenční integritu. Chcete-li vynutit referenční integritu, musíte upravit vztah. Další informace naleznete v části.

Otevřete tabulku v zobrazení datového listu

    V navigačním podokně poklepejte na tabulku.

Otevřete podokno Seznam polí

The Seznam polí podokno zobrazuje všechny ostatní tabulky ve vaší databázi, seskupené do kategorií. Když pracujete s tabulkou v zobrazení datového listu, Access zobrazí pole v jedné ze dvou kategorií v Seznam polí panel: Pole dostupná v souvisejících tabulkách a . První kategorie uvádí všechny tabulky, které mají vztah k tabulce, se kterou právě pracujete. Druhá kategorie uvádí všechny tabulky, se kterými vaše tabulka nemá vztah.

V Seznam polí podokno, když kliknete na znaménko plus ( + ) vedle názvu tabulky uvidíte seznam všech polí dostupných v této tabulce. Chcete-li přidat pole do tabulky, přetáhněte požadované pole z Seznam polí podokno do tabulky v zobrazení datového listu.

Přidejte pole a vytvořte vztah z podokna Seznam polí

    S tabulkou otevřenou v zobrazení datového listu stiskněte ALT+F8. The Seznam polí zobrazí se podokno.

    Pod Pole dostupná v jiných tabulkách, klikněte na znaménko plus ( + ) vedle názvu tabulky zobrazíte seznam polí v této tabulce.

    Přetáhněte požadované pole z Seznam polí do tabulky, která je otevřená v zobrazení datového listu.

    Když se zobrazí řádek pro vložení, umístěte pole na místo.

    The Průvodce vyhledáváním začíná.

    Postupujte podle pokynů pro dokončení Průvodce vyhledáváním.

    Pole se zobrazí v tabulce v zobrazení datového listu.

Když přetáhnete pole z „jiné“ (nesouvisející) tabulky a poté dokončíte Průvodce vyhledáváním, automaticky se vytvoří nový vztah typu one-to-many mezi tabulkou v Seznam polí a tabulku, do které jste pole přetáhli. Tento vztah vytvořený aplikací Access standardně nevynucuje referenční integritu. Chcete-li vynutit referenční integritu, musíte upravit vztah. Další informace naleznete v části.

Upravit vztah

Vztah změníte tak, že jej vyberete v okně Vztahy a poté jej upravíte.

    Opatrně umístěte kurzor tak, aby směřoval na čáru vztahu, a kliknutím na čáru ji vyberte.

    Po výběru se čára vztahu zobrazí tlustší.

    S vybranou čárou vztahu na ni poklepejte.

    Na Design kartu, v Nástroje skupina, klikněte Upravit vztahy.

Upravit vztahy objeví se dialogové okno.

Otevřete dialogové okno Upravit vztahy

Nastavte typ spojení

Když definujete vztah tabulky, fakta o vztahu budou určovat vaše návrhy dotazů. Pokud například definujete vztah mezi dvěma tabulkami a poté vytvoříte dotaz, který tyto dvě tabulky využívá, Access automaticky vybere výchozí odpovídající pole na základě polí určených ve vztahu. Tyto výchozí výchozí hodnoty můžete ve svém dotazu přepsat, ale hodnoty dodané vztahem se často ukáží jako správné. Vzhledem k tomu, že porovnávání a sdružování dat z více než jedné tabulky je něco, co budete často provádět ve všech kromě těch nejjednodušších databází, nastavení výchozích hodnot vytvořením vztahů může šetřit čas a může být přínosné.

Dotaz na více tabulek kombinuje informace z více než jedné tabulky shodou hodnot ve společných polích. Operace, která provádí párování a kombinování, se nazývá spojení. Předpokládejme například, že chcete zobrazit objednávky zákazníků. Vytvoříte dotaz, který spojí tabulku Zákazníci a tabulku Objednávky v poli Číslo zákazníka. Výsledek dotazu obsahuje informace o zákaznících a objednávkách pouze pro ty řádky, kde byla nalezena odpovídající shoda.

Jednou z hodnot, které můžete zadat pro každý vztah, je typ spojení. Typ spojení říká Accessu, které záznamy má zahrnout do výsledku dotazu. Zvažte například znovu dotaz, který spojuje tabulku Zákazníci a tabulku Objednávky ve společných polích představujících ID zákazníka. Při použití výchozího typu spojení (nazývaného vnitřní spojení) dotaz vrátí pouze řádky Zákazník a řádky objednávky, kde jsou společná pole (nazývaná také spojená pole) stejná.

Předpokládejme však, že chcete zahrnout všechny zákazníky – dokonce i ty, kteří ještě nezadali žádné objednávky. Chcete-li toho dosáhnout, musíte změnit typ spojení z vnitřního spojení na to, co je známé jako levé vnější spojení. Levé vnější spojení vrátí všechny řádky v tabulce na levé straně vztahu a pouze ty, které se shodují v tabulce vpravo. Pravé vnější spojení vrátí všechny řádky napravo a pouze ty, které se shodují na levé straně.

Poznámka: V tomto případě „levá“ a „pravá“ označují polohu tabulek v Upravit vztahy dialogové okno, nikoli okno Vztahy.

Měli byste se zamyslet nad výsledkem, který budete nejčastěji chtít z dotazu, který spojuje tabulky v tomto vztahu, a podle toho nastavit typ spojení.

Nastavte typ spojení

    V Upravit vztahy dialogovém okně klepněte na Typ připojení.

    The Připojit vlastnosti objeví se dialogové okno.

    Klikněte na svou volbu a poté klikněte OK.

Následující tabulka (s použitím tabulek Zákazníci a Objednávky) ukazuje tři možnosti, které jsou zobrazeny v Připojit dialogové okno Vlastnosti pole, typ spojení, které používají, a zda jsou pro každou tabulku vráceny všechny řádky nebo odpovídající řádky.

1. Zahrňte pouze řádky, kde jsou spojená pole z obou tabulek stejná.

2. Zahrňte VŠECHNY záznamy z "Zákazníků" a pouze ty záznamy z "Objednávek", kde jsou spojená pole stejná.

3. Zahrňte VŠECHNY záznamy z "Objednávky" a pouze ty záznamy z "Zákazníků", kde jsou spojená pole stejná.

Pravý vnější spoj

Když zvolíte možnost 2 nebo možnost 3, na linii vztahu se zobrazí šipka. Tato šipka ukazuje na tu stranu vztahu, která zobrazuje pouze odpovídající řádky.

Proveďte změny v dialogovém okně Vlastnosti spojení

Prosadit referenční integritu

Účelem referenční integrity je zabránit osiřelým záznamům – záznamům, které odkazují na jiné záznamy, které již neexistují. Referenční integritu vynucujete jejím povolením pro vztah tabulky. Po vynucení Access odmítne jakoukoli operaci, která by narušila referenční integritu pro daný vztah tabulky. To znamená, že Access odmítne aktualizace, které změní cíl odkazu, i odstranění, která odstraní cíl odkazu. Chcete-li, aby Access šířil referenční aktualizace a odstranění, aby se odpovídajícím způsobem změnily všechny související řádky, viz část.

Zapněte nebo vypněte referenční integritu

    Na Databázové nástroje kartu, v Vztahy skupina, klikněte Vztahy.

    Na Design kartu, v Vztahy skupina, klikněte Všechny vztahy.

    Skrytý zaškrtávací políčko v tabulce Vlastnosti Možnosti navigace dialogové okno.

    Poklepejte na čáru vztahu. The Upravit vztahy objeví se dialogové okno.

    Vyberte nebo zrušte výběr.

    OK.

Pokud vynucujete referenční integritu, platí následující pravidla:

    Nemůžete zadat hodnotu do pole cizího klíče související tabulky, pokud tato hodnota neexistuje v poli primárního klíče primární tabulky – vytvoří se tak osiřelé záznamy.

    Záznam z primární tabulky nelze odstranit, pokud v související tabulce existují odpovídající záznamy. Nemůžete například odstranit záznam zaměstnance z tabulky Zaměstnanci, pokud jsou k tomuto zaměstnanci přiřazeny objednávky v tabulce Objednávky. Můžete se však rozhodnout odstranit primární záznam a všechny související záznamy v jedné operaci zaškrtnutím políčka.

    Nemůžete změnit hodnotu primárního klíče v primární tabulce, pokud by to vytvořilo osiřelé záznamy. Nemůžete například změnit číslo objednávky v tabulce Objednávky, pokud jsou k této objednávce v tabulce Podrobnosti objednávky přiřazeny řádkové položky. Můžete se však rozhodnout aktualizovat primární záznam a všechny související záznamy v jedné operaci zaškrtnutím políčka Kaskádově aktualizovat související pole.

    Poznámky: Pokud máte potíže s aktivací referenční integrity, mějte na paměti, že k vynucení referenční integrity jsou vyžadovány následující podmínky:

    • Společné pole z primární tabulky musí být primární klíč nebo mít jedinečný index.

      Společná pole musí mít stejný datový typ. Jedinou výjimkou je, že pole Automatické číslo může souviset s polem Číslo, které má a Velikost pole nastavení vlastnosti Dlouhé celé číslo.

      Obě tabulky existují ve stejné databázi Accessu. Referenční integritu nelze u propojených tabulek vynutit. Pokud jsou však zdrojové tabulky ve formátu Access, můžete otevřít databázi, ve které jsou uloženy, a povolit v této databázi referenční integritu.

Nastavte možnosti kaskády

Můžete se setkat se situací, kdy máte oprávněnou potřebu změnit hodnotu na „jedné“ straně vztahu. V takovém případě potřebujete, aby Access automaticky aktualizoval všechny dotčené řádky jako součást jediné operace. Tímto způsobem je aktualizace dokončena v plném rozsahu, takže vaše databáze nezůstane v nekonzistentním stavu – některé řádky jsou aktualizované a některé ne. Access vám pomůže vyhnout se tomuto problému tím, že podporuje možnost Cascade Update Related Fields. Když vynutíte referenční integritu a vyberete možnost Kaskádově aktualizovat související pole a poté aktualizujete primární klíč, Access automaticky aktualizuje všechna pole, která odkazují na primární klíč.

Možná budete také muset odstranit řádek a všechny související záznamy – například záznam odesílatele a všechny související objednávky pro daného odesílatele. Z tohoto důvodu Access podporuje možnost Cascade Delete Related Records. Když vynucujete referenční integritu a vyberte a Kaskádové odstranění souvisejících záznamů Zaškrtávací políčko Access automaticky odstraní všechny záznamy, které odkazují na primární klíč, když odstraníte záznam obsahující primární klíč.

Zapněte nebo vypněte aktualizaci kaskády a/nebo odstranění kaskády

    Na Databázové nástroje kartu, v Vztahy skupina, klikněte Vztahy.

    Na Design kartu, v Vztahy skupina, klikněte Všechny vztahy.

    Zobrazí se všechny tabulky s vazbami a zobrazí se čáry vztahů. Všimněte si, že skryté tabulky (tabulky, pro které Skrytý zaškrtávací políčko v tabulce Vlastnosti je vybráno dialogové okno) a jejich vztahy nebudou zobrazeny, pokud není vybrána možnost Zobrazit skryté objekty v Možnosti navigace dialogové okno.

    Klepněte na čáru vztahu pro vztah, který chcete změnit. Po výběru se čára vztahu zobrazí tlustší.

    Poklepejte na čáru vztahu.

    The Upravit vztahy objeví se dialogové okno.

    Vyberte Vynutit referenční integritu zaškrtávací políčko.

    Vyberte buď nebo Kaskádové odstranění souvisejících záznamů zaškrtávací políčko nebo vyberte obojí.

    Proveďte další změny vztahu a potom klepněte na tlačítko OK.

Poznámka: Pokud je primárním klíčem pole AutoNumber, výběrem Kaskádová aktualizace souvisejících polí zaškrtávací políčko nebude mít žádný účinek, protože nemůžete změnit hodnotu v poli automatického čísla.

Odstraňte vztah tabulky

Důležité: Když odeberete vztah, odeberete také podporu referenční integrity pro tento vztah, pokud je povolena. Výsledkem je, že Access již nebude automaticky bránit vytváření osiřelých záznamů na straně „mnoho“ vztahu.

Chcete-li odstranit vztah tabulky, musíte odstranit řádek vztahu v okně Vztahy. Umístěte kurzor tak, aby směřoval na čáru vztahu, a potom klikněte na čáru. Po výběru se čára vztahu zobrazí tlustší. S vybranou čárou vztahu stiskněte DELETE.

    Na Databázové nástroje kartu, v Vztahy skupina, klikněte Vztahy.

    Na Design kartu, v Vztahy skupina, klikněte Všechny vztahy.

    Zobrazí se všechny tabulky s vazbami a zobrazí se čáry vztahů. Všimněte si, že skryté tabulky (tabulky, pro které Skrytý zaškrtávací políčko v tabulce Vlastnosti je vybráno dialogové okno) a jejich vztahy nebudou zobrazeny, pokud není vybrána možnost Zobrazit skryté objekty v Možnosti navigace dialogové okno.

    Klepněte na čáru vztahu pro vztah, který chcete odstranit. Po výběru se čára vztahu zobrazí tlustší.

    Stiskněte klávesu DELETE.

    Access může zobrazit zprávu Opravdu chcete trvale odstranit vybraný vztah z databáze?. Pokud se zobrazí tato potvrzovací zpráva, klepněte na tlačítko Ano.

Poznámka: Pokud se některá z tabulek použitých ve vztahu tabulky používá – možná jinou osobou nebo procesem, nebo v otevřeném databázovém objektu, jako je formulář – nebudete moci vztah odstranit. Před pokusem o odebrání vztahu musíte zavřít všechny otevřené objekty, které využívají tyto tabulky.

Vytvořte, upravte nebo odstraňte vztah ve webové aplikaci Accessu

Při práci se vztahy ve webové aplikaci Access existují důležité rozdíly.

Vytvořte si vztah

Okno Relationships není dostupné ve webové aplikaci Access Místo vytvoření vztahu ve webové aplikaci Access vytvoříte vyhledávací pole, které získá hodnoty ze souvisejícího pole v jiné tabulce Tabulka Zaměstnanci a chcete přidat vyhledávání do tabulky Regiony, abyste mohli ukázat, ve kterém regionu každý zaměstnanec pracuje.

Poznámka: Pole, které bude vaše vyhledávání používat jako zdroj hodnot, musí již existovat před vytvořením vyhledávacího pole.

Zde je návod, jak vytvořit vyhledávací pole ve webové aplikaci Access:

Upravit vztah

Okno Vztahy není k dispozici ve webové aplikaci Access Pole v jedné tabulce používáte jako zdroj (vyhledávací pole) pro hodnoty v souvisejícím poli v jiné tabulce.

Smazat vztah

Okno Relationships není dostupné ve webové aplikaci Access Pole v jedné tabulce použijete jako zdroj (vyhledávací pole) pro hodnoty v souvisejícím poli v jiné tabulce, abyste odstranili vztah mezi dvěma tabulkami Při přístupu k webové aplikaci musíte odstranit vyhledávací pole a související data.

Vytvořte nebo upravte vztah ve webové databázi Accessu 2010

Chcete-li vytvořit vztah ve webové databázi Accessu 2010, použijte Průvodce vyhledáváním. Okno Vztahy není dostupné ve webové databázi. Pole v jedné tabulce používáte jako zdroj pro hodnoty v souvisejícím poli v jiné tabulce.

Poznámka: Pole, které používáte jako zdroj hodnot, musí již existovat, než budete moci použít Průvodce vyhledáváním.

Vytvořte vztah ve webové databázi Accessu 2010 pomocí Průvodce vyhledáváním

    Otevřete tabulku, která by měla získat své hodnoty z jiné tabulky.

    Vpravo od posledního pole klikněte Klepnutím na tlačítko Přidat a poté klepněte na Vyhledávání a vztahy.

    Poznámka: Možná budete muset posouvat vodorovně, abyste viděli Klepnutím na tlačítko Přidat.

    Na první obrazovce Průvodce vyhledáváním vyberte Chci, aby vyhledávací pole získalo hodnoty z jiné tabulky a poté klepněte na Další.

    Vyberte tabulku, která obsahuje zdrojové hodnoty, a potom klikněte Další.

    V Dostupná pole poklepejte na pole se zdrojovými hodnotami a potom klepněte na Další.

    Volitelně zadejte pořadí řazení pro vyhledávací pole. Klikněte Další.

    Volitelně upravte šířku vyhledávacího pole – dobrý nápad, pokud jsou hodnoty dlouhé. Klikněte Další.

    Zadejte název nového pole. Pokud se chcete ujistit, že se hodnoty v obou tabulkách vždy shodují, vyberte Povolit integritu dat zaškrtávací políčko a poté klikněte na jednu z následujících možností:

    • Kaskádové odstranění– tato volba znamená, že pokud odstraníte záznam z jedné tabulky, smažou se i odpovídající záznamy v druhé tabulce.

      Omezit mazání– tato možnost znamená, že pokud se pokusíte odstranit záznam z jedné tabulky, ale v druhé tabulce je odpovídající záznam, operace odstranění není povolena.

      Poznámka: Nevybírejte Povolit více hodnot v Průvodci vyhledáváním, když používáte průvodce k vytvoření vztahu.

Upravte vztah ve webové databázi Accessu 2010

    Otevřete tabulku, která získává své hodnoty z jiné tabulky.

    Vyberte pole, které získává své hodnoty z jiné tabulky.

    Na Pole kartu, v Vlastnosti skupina, klikněte Upravit vyhledávání.

    Postupujte podle kroků v průvodci a proveďte požadované změny. Můžete změnit následující:

    • Pole, které je zdrojem hodnot

      Pořadí řazení hodnot

      Šířka pole a zda se má skrýt klíčový sloupec

      Štítek vyhledávacího pole

      Zda je povolena integrita dat

      Pokud je integrita dat povolena, ať jsou mazání kaskádová nebo omezená

Po vytvoření všech databázových tabulek zbývá pouze navázat mezi nimi spojení. K tomu potřebujete:

1. Klikněte na záložku „Tabulky“ v okně databáze.

2. V nabídce Servis vyberte položku Datové schéma...

3. Z okna Datové schéma přidat všechny propojené tabulky. Chcete-li to provést, otevřete nabídku Spojení a vyberte položku Přidat tabulku... nebo klikněte na tlačítko na panelu nástrojů. V okně, které se objeví Přidání tabulky označte myší název požadovaného stolu a klikněte na tlačítko Přidat (obr. 1).

Rýže. 1. Přidání tabulky do okna Datové schéma .

Poté se v okně objeví rozložení příslušné tabulky Datové schéma. Po dokončení přidávání všech potřebných tabulek do okna Systémúdaje, které potřebujete k zavření okna Přidání tabulky tlačítko Blízko .

4. Rozvržení tabulek v okně Datové schéma pomocí myši umístěte požadované místo pomocí metody přetažení. Upravte velikost rozložení tabulek a roztáhněte je pomocí myši.

5. Chcete-li vytvořit vztah mezi dvěma tabulkami:

A) Klikněte na primární klíč tabulky umístěné na straně „1“ vztahu.

b) Klikněte levé tlačítko myši a bez jeho uvolnění přesuňte pole primárního klíče do podřízené tabulky (ukazatel myši při pohybu mění svůj vzhled).

PROTI) Uvolněte levé tlačítko myši nad cizím klíčem podtabulky.

6. V okně, které se objeví Změna připojení Zobrazí se názvy polí, kterými jsou tabulky propojeny. Položku je nutné označit Zajištění integrity dat . V tomto případě Access znemožní zapsat do podtabulky hodnotu společného pole, které není v hlavní tabulce (obr. 2) .

Rýže. 2. Navázání spojení mezi tabulkami.

Po ustavení integrity dat dva další možnosti Kaskádová aktualizace souvisejících oborů A Kaskádové mazání souvisejících polí . První možnost umožňuje aktualizovat libovolnou hodnotu klíčového pole v hlavní tabulce a automaticky ji změnit ve všech podřízených tabulkách. Druhá možnost funguje obdobně – mazání záznamů z podřízených tabulek, které odpovídají smazanému klíči hlavní tabulky. Po kontrole všech těchto bodů je třeba kliknout na tlačítko vytvořit.

V okně Datové schéma Mezi tabulkami je vytvořeno spojení ve formě vyznačeného řádku. Chcete-li spojení odstranit, vyberte jej myší (čára se stane tučnou) a stiskněte tlačítko Vymazat na klávesnici.

7. Opakujte kroky str. 5-6 pro navázání všech spojení.

8. Zavřít okno Datové schéma , odpovídá „ Ano » když vás systém vyzve k uložení změny v rozložení datového schématu.

V uvažovaném příkladu budeme postupovat podle postupu popsaného výše, abychom stanovili všechny vztahy v datovém modelu. Datový diagram sestrojený v tomto případě bude přesně odpovídat Obr. 3.

Komentář. Při vytváření datového schématu musí být tabulky prázdný.

Rýže. 3. Datový diagram uvažovaného příkladu.


Přednáška 6

Vyhledávání informací v databázových tabulkách

Řazení informací v tabulkách

Pro snadnější prohlížení můžete záznamy v tabulce seřadit v určitém pořadí, například v tabulce Pneumatiky záznamy lze řadit v sestupném pořadí podle jejich poloměru. Tlačítka řazení na panelu nástrojů (řetězce příkazů nabídky Příspěvky - Seřadit - Seřadit vzestupně nebo Seřadit v sestupném pořadí) Umožňuje seřadit sloupce ve vzestupném nebo sestupném pořadí. Než kliknete na tlačítko řazení, musíte vybrat pole, která chcete použít k řazení. Chcete-li vybrat pole, jednoduše umístěte kurzor do libovolného z jeho položek. Poté klikněte na tlačítko řazení a data se zobrazí v seřazeném pořadí.

Rýže. 1. Třídění tabulky Pneumatika přes pole Poloměr

V zobrazení tabulky můžete vybrat dva nebo více sousedních sloupců najednou a pak je seřadit. Ve výchozím nastavení začne Access třídit záznamy od vybraného sloupce zcela vlevo. V tomto případě budou záznamy tabulky seřazeny nejprve podle vybraného sloupce zcela vlevo, poté (pro identické hodnoty v prvním seřazeném sloupci) - podle druhého atd. Pokud potřebujete obnovit pořadí, ve kterém jsou záznamy zobrazeny, použijte příkazový řetězec Příspěvky - Odstraňte filtr .

Filtry

Při práci s tabulkou v online režimu lze nastavit filtr, tzn. požádat logický výraz, což vám umožní zobrazit pouze ty záznamy, pro které je tento výraz pravdivý.

V Accessu existují tři typy filtrování dat:

Běžný filtr-používá se k výběru požadovaných hodnot ze seznamu bez zobrazení všech záznamů v tabulce nebo formuláři, nebo při zadání několika podmínek výběru současně (výběrové kritérium se tvoří pomocí logického operátoru Nebo ).

Chcete-li provést filtrování dat, musíte otevřít tabulku a poté v nabídce v nabídce Příspěvky aktivujme tým Filtr a v podnabídce, která se otevře, příkaz Vyměňte filtr . Poté v okně vytvoření filtru je v požadovaném poli uvedeno kritérium výběru informací (obr. 2).

Relační databáze, vytvořená v souladu s návrhem kanonického datového modelu domény, se skládá z normalizovaných tabulek propojených vztahem jedna k více. Taková databáze zajišťuje, že nedochází k duplicitě popisných dat, že jsou zadána jednou a že integrita dat je udržována systémem. Vztahy mezi tabulkami umožňují kombinovat data z různých tabulek, což je nezbytné pro řešení většiny úloh zadávání, prohlížení a úpravy dat, získávání informací z dotazů a výstup sestav.

Vztahy mezi tabulkami jsou navázány v souladu s projektem logická struktura databáze a jsou uloženy v datovém schématu Accessu. Datové schéma v Accessu není jen nástroj grafický displej logická struktura databáze, je systémem aktivně využívána v procesu zpracování dat. Vytvoření datového schématu vám umožní zjednodušit návrh vícetabulkových formulářů, dotazů, sestav a také zajistit zachování integrity vzájemně souvisejících dat při zadávání a úpravách dat v tabulkách.

Vytvoření datového schématu

Vytvoření datového schématu začíná provedením příkazu Datové schéma(Vztahy) ve skupině Vztah(Vztahy) na kartě pásu karet Práce s databázemi(Databázové nástroje). V důsledku provedení tohoto příkazu se otevře okno datového diagramu a dialogové okno Přidání tabulky(Show Table), ve kterém vyberete tabulky zahrnuté do diagramu (viz obr. 3.48). Dialogové okno Přidání tabulky otevře se automaticky, pokud v databázi již není definován žádný vztah. Pokud se okno neotevře, na pásce Práce s připojeními | Konstruktér(Nástroje pro vztahy | Design) ve skupině Spojení(Vztahy) klikněte na tlačítko Zobrazit tabulku(Zobrazit tabulku).

Včetně tabulek ve vašem datovém schématu

V okně Přidání tabulky(Show Table) (Obr. 3.48) zobrazí všechny tabulky a dotazy obsažené v databázi. Vyberte kartu Tabulky(Tabulky) a pomocí tlačítka Přidat(Přidat) umístěte jej do okna Datové schéma(Vztahy) všechny dříve vytvořené databázové tabulky Doručení položek zobrazené v okně Přidání tabulky(Zobrazit tabulku). Poté stiskněte tlačítko Blízko(Blízko). V důsledku toho v okně Datové schéma(Relationships) databázové tabulky budou reprezentovány okny se seznamy jejich polí a klíčů zvýrazněnými tučně (viz obr. 3.52).

Vytváření vztahů mezi tabulkami datových schémat

Při vytváření vztahů v datovém schématu se používá návrh logické struktury relační databáze, která zobrazuje všechny vztahy mezi jednotlivými tabulkami. Vztahy se realizují přidáním společných polí tzv komunikační klíč. V případě vztahů jedna k více hodnotám mezi tabulkami je klíčem vztahu klíč hlavní tabulky (jednoduché nebo složené). V podřízené tabulce může být součástí jedinečného klíče nebo nemusí být součástí klíče tabulky vůbec. Vztahy typu single-to-multiple jsou v relačních databázích zásadní. Vztahy jedna ku jedné se zpravidla používají, když je potřeba rozdělovat velký počet pole definovaná stejným klíčem v různých tabulkách, které mají různé předpisy pro údržbu.

Vytváření vztahů pomocí jednoduchého klíče

Pojďme navázat spojení mezi tabulkami KUPUJÍCÍ a KONTRAKT, které jsou ve vztahu jeden k mnoha. Při navazování spojení mezi dvojicí tabulek, které jsou ve vztahu typu 1: M, vybereme v hlavní tabulce KUPUJÍCÍ klíčové pole CODE_POK, kterým je spojení navázáno. Poté jej se stisknutým tlačítkem myši přetáhněte do odpovídajícího pole podtabulky CONTRACT.

Protože pole vztahu je jedinečný klíč v hlavní tabulce vztahů, ale není klíčem v podřízené tabulce vztahů, datové schéma v aplikaci Access identifikuje vztah jedna k mnoha mezi záznamy v těchto tabulkách. V okně se objeví hodnota One-To-Many Změna připojení(Upravit vztahy) v řadě Typ vztahu(Typ vztahu) (obr. 3.49).

KOMENTÁŘ
Pokud je pole propojení jedinečným klíčem v obou propojených tabulkách, datové schéma v Accessu identifikuje vztah " jedna ku jedné". Pokud se k propojení tabulek místo klíčového pole hlavní tabulky použije nějaký jedinečný index, systém také uvede vztah tabulek jako 1:M nebo 1:1.

Definování vztahů pomocí složeného klíče

Definujme vztahy mezi tabulkami DOPRAVNÉ INVOICE, které jsou propojeny složeným klíčem NOM_INCLUSION + CODE_SC. Chcete-li to provést, v hlavní tabulce INVOICE vyberte obě tato pole stisknutím klávesy a přetáhněte je do podřízené tabulky SHIPMENT.

V okně Změna připojení(Edit Relationships) (Obr. 3.50) pro každé pole složeného klíče hlavní tabulky INVOICE, pojmenované Tabulka/dotaz(Tabulka/Dotaz), vyberte odpovídající pole podřízené tabulky DOPRAVA, pojmenované Související tabulka/dotaz(Související tabulka/dotaz).

Kaskádová aktualizace a mazání souvisejících záznamů

Pokud je pro vybraný vztah zachována integrita, můžete nastavit režim kaskádového mazání pro související záznamy a režim kaskádové aktualizace pro související pole. Tyto parametry umožňují v hlavní tabulce mazat záznamy a měnit hodnotu v klíčovém poli, protože s těmito parametry systém automaticky provede potřebné změny v podřízených tabulkách, čímž zajistí, že vlastnosti integrity databáze jsou zachovalé.

V kaskádovém režimu pro mazání souvisejících záznamů se při odstranění záznamu z hlavní tabulky automaticky odstraní všechny související záznamy v podřízených tabulkách. Když odstraníte záznam z hlavní tabulky, provede se odstranění podřízených záznamů na všech úrovních, pokud je na každé úrovni zadán tento režim.

V režimu kaskádové aktualizace pro související pole, když změníte hodnotu klíčového pole v záznamu v hlavní tabulce, Access automaticky aktualizuje hodnoty v odpovídajícím poli v podřízených záznamech.

Nainstalujte do okna Změna připojení(Upravit vztahy) (viz obrázek 3.49). kaskádová aktualizace souvisejících oborů(Pole související s kaskádovou aktualizací) a kaskádové mazání souvisejících záznamů(Cascade Delete Related Records) je možné pouze po nastavení parametru integrity dat.

Jakmile jsou vztahy vytvořeny, lze obrazy tabulky přesouvat v pracovním prostoru okna datového diagramu. Přesouvání a změna velikosti oken se seznamy polí tabulky v okně datového diagramu se provádí standardními metodami Windows.

Všimněte si, že pokud není povoleno kaskádové odstraňování, není možné odstranit záznam v hlavní tabulce, pokud jsou v podřízené tabulce související záznamy.
Podívejte se na video:

Zde je hlavní věc, o které jsme chtěli mluvit na téma „Datové schéma v Accessu“.

Mezi databázovými tabulkami existují spojení, která umožňují vyhnout se redundanci v návrhu. To znamená, že nezadávejte stejné hodnoty do několika objektů, ale vytvořte pouze jeden a použijte jej v jiných a přidejte odkaz na ten hlavní. V tomto případě je nutné dodržet požadavek integrity databáze.

Odkazy na databázi

Jako příklad uveďme spojení v databázi cestovní kanceláře. Jeho součástí je tabulka hotelů v Thajsku – zemi, do které cestovní kancelář posílá hosty. Hotely se nacházejí v různých regionech království.

Pokud společnost spolupracuje s hotely pouze v několika regionech a v každém regionu jsou desítky nebo stovky hotelů, pak je pokaždé vyplňovat pole regionu pro každý hotel ztrátou času. V databázi je proto vytvořena samostatná tabulka obsahující pouze seznam regionů a při zadání hotelu si uživatel jednoduše vybere z rozbalovacího seznamu požadovaný.

Analogicky byl přidán seznam zemí pro společnost spolupracující s několika zeměmi. Poté je do seznamu regionů přidáno další pole - „Country“ a do databáze je vložen adresář zemí, jejichž názvy jsou následně vybírány ze seznamu.

Tabulky spolu souvisí způsobem jedna k mnoha. To znamená, že jeden záznam z tabulky Regiony se v tabulce Hotely objeví mnohokrát. Kromě toho existují typy many-to-many a one-to-one. Poslední jmenovaný se však v praxi používá velmi zřídka. Níže se podíváme na to, jak jsou tyto typy označeny v datových diagramech v Accessu.

Schéma databáze

Ve výše uvedeném příkladu jsou „Hotely“ spojeny s „Regiony“ a ty jsou zase spojeny se „Zeměmi“. Tyto informace zapsané v textu jasně neukazují spojení mezi objekty. A v naší databázi jsou pouze tři tabulky, ale mohou jich být stovky. Pro vývojáře je těžké udržet v hlavě všechny souvislosti.

Jako pomocný nástroj jsou v databázích vytvářeny datové diagramy, které přehledně vizuálně zobrazují všechny objekty a vztahy mezi nimi. V Accessu se datová schémata vytvářejí pomocí speciálního nástroje. Pro naši databázi to vypadá takto:

Obdélníky označují tabulky se seznamem polí, čáry mezi nimi označují spojení. Na komunikační lince jsou v místech, kde přiléhají obdélníky tabulky, provedena tato označení: „1“ a „∞“. Ukazují, jaký typ připojení se v tomto ohledu používá. Ikona „1“ u zdrojové tabulky s ikonou „∞“ u cílové tabulky značí zobrazení typu one-to-many. Obě spojení v naší databázi jsou tohoto typu.

V souladu s tím dvě jednotky na dvou koncích čáry označují pohled „jedna ku jedné“ a dvě znaménka nekonečna označují pohled „mnoho ku mnoha“.

Vytvoření datového schématu

Pro vytvoření datového schématu v Accessu byl na panel „Práce s databázemi“ přidán nástroj. DBMS automaticky vytvoří schéma na základě tabulek a vztahů, které existují v databázi. Výše uvedené schéma je vytvořeno samotným systémem. Uživatel může provádět změny v rozložení. Některé z nich neovlivní strukturu databáze, pouze zobrazení informací. A některé povedou ke změnám ve struktuře.

V režimu Návrh je k dispozici operace „Vymazat rozvržení“. Po spuštění se obrazovka datového schématu v Accessu vymaže a tabulky a vztahy se skryjí. To neznamená, že zmizí z databáze - jednoduše se neprojeví v uspořádání obvodu.

Operace „Skrýt tabulku“ provede stejnou akci na vybraném objektu. Jednoduše zmizí z obrazovky spolu se svými vztahovými liniemi. Operace „Unhide Table“ pomůže vrátit skryté tabulky. Vyberte objekty, které chcete přidat do rozvržení. V tomto případě se spojení s ním zobrazí automaticky.

Vytváření vztahů mezi tabulkami

V našem příkladu byly vztahy mezi tabulkami definovány již v době vytvoření. Pojďme se blíže podívat na to, jak to udělat. Jak již víme, „Hotels“ obsahuje pole „Region“, jehož údaje jsou převzaty ze stejnojmenné tabulky. Když přidáte sloupec Oblast, určíte typ pole Vyhledávání a relace.

Otevře se Průvodce vytvořením pole, ve kterém vybereme možnost získání hodnot buněk z jiného objektu. Ve druhém kroku průvodce vybereme objekt, ze kterého budou hodnoty nahrazeny. V našem případě se jedná o tabulku „Regiony“. Ze seznamu polí dostupných k zobrazení potřebujeme „Název“ – názvy regionů se zobrazí v hotelové tabulce. V případě potřeby nastavte pořadí řazení titulků a šířku sloupce.

V posledním kroku dáme novému poli název a specifikujeme parametr integrity. Níže se mu budeme věnovat podrobněji. Po kliknutí na tlačítko „Dokončit“ se do tabulky hotelu přidá sloupec „Region“; hodnoty pro něj jsou převzaty ze zadaného objektu.

Vztah mezi hotelovými a regionálními tabulkami je nyní znázorněn v diagramu.

Měnící se vztahy

Pokud se při přidání sloupce k objektu nepřidá vztah, provede se to přímo v rozložení datového schématu v Accessu. Na příkladu si ukážeme, jak vytvořit nové připojení. Klikněte na tlačítko "Upravit odkazy". Chcete-li při úpravách vztahů vytvořit nový vztah, klepněte na Nový. Ve formuláři „Vytvoření“ vyberte tabulky pro připojení a pole, která si budou navzájem odpovídat.

U již vytvořeného spojení je možné změnit parametry pro spojování záznamů v dotazech. Chcete-li to provést, zavolejte dialogové okno schématu dat MS Access „Změnit odkazy“ a klikněte na tlačítko „Sloučit“. Formulář pro úpravu parametrů nabízí možnosti přidružení:

  • V prvním případě se ve výsledcích dotazu zobrazí pouze ty řádky, ve kterých se shodují pole tabulek „Hotely“ a „Regiony“.
  • V druhém případě se sloučí všechny řádky „Regiony“ a pouze odpovídající „Hotely“.
  • Ve třetím je situace opačná než ve druhém - všechny řádky „Hotely“ jsou kombinovány s odpovídajícími „Regiony“.

Necháme automatický výběr systému – první možnost.

Integrita dat DB

Spojení mezi databázovými objekty v datovém diagramu v Accessu nás přivádí ke konceptu integrity dat. Jak je uvedeno výše, při vytváření spojení mezi poli databázových objektů se zadává parametr integrity. Pokud je povoleno, vztahy mezi objekty jsou udržovány a chráněny systémem.

Ukažme si to názorně na příkladu databáze cestovní kanceláře. V „Hotels“ patří hotel s názvem Anantara Lawana Koh Samui Resort do regionu Koh Samui. Řekněme, že jsme tuto oblast odstranili z „Regionů“. Pole nyní odkazuje na záznam, který neexistuje. To je porušení integrity.

Podobně s nastaveným požadavkem na integritu nebudeme moci v tomto poli vybrat oblast Chiang Mai, protože neexistuje v tabulce oblastí.

V případě potřeby jsou databázová schémata aplikace Access stažena do sestavy a odeslána na tiskárnu, převedena do souboru nebo odeslána e-mailem.

© 2024 ermake.ru -- O opravě PC - Informační portál