Preizkusite ga!
Moč relacijske zbirke podatkov je v združevanju podatkov v več tabelah. Če želite to narediti, morate najprej vzpostaviti relacije med tabelami. Nato nastavite Access tako, da združi podatke v poizvedbe, obrazce in poročila.
Če si želite ogledati vse obstoječe relacije, definirane za zbirko podatkov, odprite Accessovo predlogo, pojdite na zavihek »Orodja za zbirke podatkov « in izberite »Relacije«.
Opomba
Če odprete prazno zbirko podatkov ali niste določili nobene relacije tabele, vas Access pozove, da dodate tabelo ali poizvedbo. Preden lahko dodate relacijo, potrebujete najmanj dve tabeli. V idealnem primeru najprej ustvarite vse tabele. Če želite izvedeti več, glejte » Ustvarjanje relacij s čarovnikom za iskanje « in »Ustvarjanje relacij« s podoknom z relacijami.
Razumevanje pogleda relacij
Črte v pogledu relacij označujejo povezave med tabelami. Na spodnji sliki je tabela na levi nadrejena tabela. Tabela na desni je podrejena tabela. Črta med njima povezuje polja (v tem primeru ID naročila in ID izdelka), ki se uporabljajo za ujemanje podatkov.
Črte in simboli prikazujejo sorodnost med tabelami:
- Debela povezujoča črta pomeni, da uveljavljate referenčno integriteto podatkov. To je dobro. Poskrbi, da so vaši podatki sinhronizirani.
- Na naši sliki število 1 označuje, da je v tej tabeli lahko le en ujemajoči se zapis. V tabeli »Naročila«, ki je prikazana tukaj, se vsak zapis ujema z vsakim naročilom.
- Simbol ∞ označuje, da lahko številni zapisi vključujejo isti ID. V tabeli s podrobnostmi naročila, ki je prikazana tukaj, se lahko naročilo (označeno z ID-jem naročila) pojavi večkrat, ker lahko isto naročilo vključuje več izdelkov.
Types of relationships between tables
Med tabelami obstajajo tri vrste relacij:
- Ena proti ena. Če se vsak element v vsaki tabeli prikaže le enkrat. Vsak zaposleni ima lahko na primer samo en službeni avto. Če želite več informacij, glejte »Ustvarjanje relacij »ena proti ena«.
- Ena proti mnogo. Ko je lahko en element v eni tabeli v relaciji z več elementi v drugi tabeli. Vsaka naročilnica lahko na primer vključuje več izdelkov.
- Mnogo proti mnogo. Če je lahko eden ali več elementov v eni tabeli v relaciji z enim ali več elementi v drugi tabeli. V vsakem naročilu je lahko na primer več izdelkov in vsak izdelek se lahko prikaže v več naročilih. Če želite izvedeti več, si oglejte » ustvarjanje relacij »mnogo proti mnogo«.
Relacije »ena proti mnogo«
Ena najpogostejših relacij med tabelami v dobro načrtovanih zbirkah podatkov je relacija »ena proti mnogo«.
Odnosi med tabelami se običajno zanašajo na primarni ključ v eni od tabel. Spomnite se, da je primarni ključ enolični identifikator (pogosto številski) za vsak zapis. Če želite prikazati, da so podatki v dveh različnih tabelah med seboj povezani, običajno ustvarite relacijo s primarnim ključem iz ene od tabel.
V tukaj prikazanem odnosu ima na primer vsaka oseba v tabeli »Stiki« ID, ki je primarni ključ (označuje ga simbol ključa zraven nje). Ta ID je prikazan tudi v polju »Lastnik« v tabeli »Sredstva«. Če želite poslati e-pošto osebi, ki je povezana z sredstvom, pridobite vrednost v polju »E-poštni naslov«. To naredite tako, da poiščete vrednost v polju »Lastnik« v tabeli »Sredstvo«, nato pa poiščite ta ID v tabeli »Stiki«. Številka 1 na enem koncu povezovalne črte in simbol ∞ na drugem koncu označujeta, da gre za odnos »ena proti mnogo«, zato je lahko en stik povezan z več sredstvi.
Urejanje relacije
Če spreminjate obstoječo zbirko podatkov ali ste ustvarili zbirko podatkov s predlogo, lahko uredite obstoječe relacije tako, da ustrezajo vašim potrebam.
Opomba
Če so tabele, s katerimi želite delati, v uporabi, jih morate najprej zapreti skupaj z morebitnimi odprtimi predmeti, ki jih uporabljajo.
Izberite »Orodja za zbirke podatkov«>– Relacije.
Izberite črto, ki povezuje dve povezani tabeli.
Namig
Če želena relacija ni prikazana, na zavihku » Načrt « v skupini »Relacije « izberite »Vse relacije«.
On the Design tab, select Edit Relations.
Tabela/poizvedba je nadrejena tabela na levi strani (v tem primeru »Stranke«).
Povezana tabela/poizvedba je podrejena tabela (v tem primeru naročila).
Tudi če tabele v pogledu relacij niso prikazane v tem vrstnem redu, njihova postavitev v pogovornem oknu označuje smer črte, ki povezuje posamezne tabele in relacijo. To je pomembno, če gre na primer za relacijo »ena proti mnogo«, ker označuje, da je tabela na levi tabela ena (nadrejena tabela), tabela na desni pa tabela »mnogo« (podrejena tabela).Če želite spremeniti polja, ki povezujejo tabele, izberite drugo polje pod vsako prikazano tabelo. V tem primeru je polje »ID« v tabeli »Stranke« povezano s poljem »ID stranke« v tabeli »Naročila«.
Spremenite način sinhronizacije podatkov med tabelami v Accessu.
Vzpostavljanje referenčne integritete Če želite preprečiti neveljavne podatke in ohraniti sklice sinhronizirane v relacijah tabel, izberite to možnost.
Recimo, da imate med tabelama »Zaposleni« in »Benefiti zaposlenih« odnos »ena proti ena«. Če zaposleni zapusti podjetje in ga odstranite iz tabele zaposlenih, je odstranjen tudi povezan zapis zaposlenega v tabeli z ugodnostmi zaposlenih.
Včasih vsiljevanje referenčne integritete ni smiselno. Recimo, da imate relacijo »ena proti mnogo« med pošiljatelji in naročili. Izbrišete pošiljatelja, ki se preslika v naročila v tabeli »Naročila«. Ta naročila postanejo osamljena, kar pomeni, da še vedno vsebujejo »ID pošiljatelja«, vendar ID ni več veljaven, ker zapis, na katerega se sklicuje več ne obstaja.Kaskadno posodabljanje polj v relaciji Če želite zagotoviti, da so podatki v povezanih poljih posodobljeni v vseh povezanih tabelah, izberite to možnost.
Recimo, da želite samo spremeniti ID pošiljatelja. Z nastavitvijo te možnosti zagotovite, da je ID pošiljatelja posodobljen – ne le v tabeli »Pošiljatelj«, ampak tudi v vseh drugih tabelah, ki so povezane z njo in vključujejo ta ID pošiljatelja, kot je tabela »Naročila«.Kaskadno brisanje polj v relaciji Odločitev o tej možnosti je odvisna od tega, ali želite ohraniti zapise v nekaterih tabelah, čeprav so morda izbrisani iz drugih tabel.
Recimo, da izbrišete pošiljatelja. Če izberete to možnost, Access izbriše vse zapise v vseh tabelah, ki se sklicujejo na ta ID pošiljatelja, vključno z vsemi naročili (v tabeli »Naročila«), ki jih je odposlal ta pošiljatelj. To možnost izberete le, če ste prepričani, da želite izbrisati zgodovino naročil.Če želite spremeniti relacijo med tabelami iz notranjega združevanja v zunanje združevanje, izberite gumb » Vrsta združevanja «. Če želite več informacij, glejte Ustvarjanje poizvedb z zunanjimi združevanji.
Brisanje relacije tabele
Opomba
Če so tabele, s katerimi želite delati, v uporabi, jih morate najprej zapreti skupaj z morebitnimi odprtimi predmeti, ki jih uporabljajo.
Če želite odstraniti relacijo tabele:
Izberite »Orodja za zbirke podatkov«>– Relacije.
Izberite črto, ki povezuje dve povezani tabeli.
Namig
Če želena relacija ni prikazana, na zavihku » Načrt « v skupini »Relacije « izberite »Vse relacije«.
Izberite tipko Delete. Če ste pozvani, da potrdite brisanje relacije, izberite »Da«.
Opomba
Ko odstranite relacijo, odstranite tudi morebitno podporo za referenčno integriteto. Zaradi tega Access ne bo več preprečeval sprememb, ki imajo za posledico osamljene zapise na strani »mnogo« relacije »ena proti mnogo«.