Vodnik po relacijah tabel

Vodnik po relacijah tabel

Pomembno : Besedilo članka je prevedeno strojno. Glejte zavrnitev odgovornosti. Angleško različico tega članka najdete tukaj .

Eden od ciljev dobrega načrta zbirke podatkov je odstraniti odvečne podatke (podvojene podatke). Če želite doseči ta cilj, podatke razdelite v več tabel na osnovi zadeve tako, da je vsak podatek predstavljen samo enkrat. Programu Access zagotovite sredstva, s katerimi lahko razdeljene informacije znova združi: to naredite tako, da skupna polja postavite v sorodne tabele. Če želite ta korak pravilno izpolniti, pa morate razumeti relacije med tabelami in nato relacije navesti v zbirki podatkov.

V tem članku

Uvod

Vrste relacij tabele

Zakaj ustvariti relacije tabele?

Razumevanje referenčne integritete

Ogled relacij tabele

Ustvarjanje relacije tabele

Brisanje relacije tabele

Spreminjanje relacije tabele

Vsiljevanje referenčne integritete

Uvod

Ko ste v zbirki podatkov ustvarili tabelo za vsako zadevo, morate programu Access omogočiti, da informacije znova združi. To naredite tako, da skupna polja postavite v sorodne tabele, in z določanjem relacij med tabelami. Nato lahko ustvarite poizvedbe, obrazce in poročila, ki prikažejo informacije iz več tabel hkrati. Obrazec, prikazan tukaj, na primer prikazuje informacije iz več tabel hkrati:

Obrazec »Naročila«, ki prikazuje sorodne informacije iz petih tabel hkrati

1. Podatki v tem obrazcu so iz tabele »Stranke«,

2. tabele »Naročila«,

3. tabele »Izdelki«

4. in tabele »Podrobnosti o naročilu«.

Ime stranke v polju Zaračunaj pridobite iz tabele »Stranke«, vrednosti »ID naročila« in »Datum naročila« so iz tabele »Naročila«, ime izdelka je iz tabele »Izdelki« in vrednosti »Cena enote« ter »Količina« pa so iz tabele »Podrobnosti o naročilu«. Te tabele so povezane druga z drugo na več načinov, da so v obrazcu združene informacije iz vsake od njih.

V zgornjem primeru morajo biti polja v tabelah usklajena, da prikažejo informacije o istem naročilu. Uskladitev dosežemo z relacijami tabel. Relacija tabele deluje tako, da poveže ujemajoče se podatke v poljih ključa – po navadi polje z istim imenom v obeh tabelah. V večini primerov so ujemajoča se polja, polje s primarnim ključem ene tabele, kar je enoličen identifikator vsakega zapisa in polje s tujim ključem v drugi tabeli. Zaposleni na primer so lahko povezani z naročili, za katere so odgovorni tako, da ustvarite relacijo tabele med polji »IDZaposlenega« v tabelah »Zaposleni« in »Naročila«.

»IDZaposlenega«, ki je uporabljen kot primarni ključ v tabeli »Zaposleni« in kot tuji ključ v tabeli »Naročila«.

1. »IDZaposlenega« se prikaže v obeh tabelah – kot primarni ključ

2. in kot tuji ključ.

Na vrh strani

Vrste relacij tabele

Obstajajo tri vrste relacij tabele v Accessu.

  • Relacija »ena proti mnogo«

    Zamislite si na primer zbirko podatkov, ki bi sledila naročilom in vključuje tabelo »Stranke« in »Naročila«. Stranka lahko opravi neomejeno število naročil. Iz tega sledi, da je za vsako stranko v tabeli »Stranke«, lahko prikazanih veliko naročil v tabeli »Naročila«. Relacija med tabelo »Stranke« in tabelo »Naročila« je relacija »ena proti mnogo«.

    Če želite v načrtu zbirke podatkov predstaviti relacijo »ena proti mnogo«, vzemite primarni ključ na strani »ena« relacije in ga dodajte kot dodatno polje ali polja v tabelo na strani »mnogo« relacije. V tem primeru tako dodate novo polje  – polje ID iz tabele »Stranke« – v tabelo »Naročila« in ga poimenujete »ID stranke«. Access lahko uporabi številko »ID stranke« v tabeli »Naročila«, da za vsako naročilo poišče ustrezno stranko.

  • Relacija »mnogo proti mnogo«

    Zdaj si oglejmo relacijo med tabelama »Izdelki« in »Naročila«. Eno naročilo lahko vključuje več kot en izdelek. Po drugi strani pa se lahko en izdelek prikaže v več naročilih. Zato lahko za vsak zapis v tabeli »Naročila« ustreza več zapisov v tabeli »Izdelki«. Poleg tega lahko vsak zapis v tabeli »Izdelki« ustreza več zapisom v tabeli »Naročila«. To vrsto relacije imenujemo »mnogo proti mnogo«. Če želite odkriti obstoječe relacije »mnogo proti mnogo« med tabelami, upoštevajte, da si je pomembno pogledati obe strani relacije.

    Če želite predstaviti relacijo »mnogo proti mnogo«, morate ustvariti tretjo tabelo, ki ji pravimo tudi stična tabela. Z njo razbijemo relacijo »mnogo proti mnogo« v dve relaciji »ena proti mnogo«. Primarni ključ obeh tabel vnesete v tretjo tabelo. Tretja tabela zabeleži vsako ponovitev ali primerek relacije. Tabeli »Naročila« in »Izdelki« na primer sta v relaciji »mnogo proti mnogo«, ki je določena z ustvarjanjem dveh relacij »ena proti mnogo« s tabelo »Podrobnosti naročila«. V enem naročilu je lahko več izdelkov in vsak izdelek se lahko prikaže v več naročilih.

  • Relacija »ena proti ena«

    V relaciji »ena proti ena« se vsak zapis v prvi tabeli lahko ujema samo z enim zapisom v drugi tabeli. Prav tako se lahko vsak zapis v drugi tabeli ujema samo z enim zapisom v prvi tabeli. Ta vrsta relacije ni razširjena, saj so sorodne informacije največkrat shranjene v isti tabeli. Relacijo »ena proti ena« lahko uporabite, da razdelite tabelo z več polji, da zaradi zaščite del tabele osamite ali da shranite informacije, ki so uporabljene samo v podmnožici glavne tabele. Ko določite tako relacijo, morata obe tabeli imeti skupno polje, ki si ga delita.

Na vrh strani

Zakaj ustvariti relacije tabele?

Relacije tabele lahko ustvarite neposredno v oknu z relacijami ali če povlečete polje iz podokna Seznam polj. Access uporablja relacije tabele za način združevanja tabel, ko jih je treba uporabiti v predmetu zbirke podatkov. Več razlogov je, zakaj morate ustvariti relacije tabele, preden ustvarite druge predmete zbirke podatkov, na primer obrazce, poizvedbe ali poročila.

  • Relacije tabele obveščajo načrte poizvedb

    Če želite delati z zapisi iz več tabel, morate ponavadi ustvariti poizvedbo, s katero združite tabele. Poizvedba deluje tako, da poišče vrednosti v polju s primarnim ključem prve tabele, ki se ujemajo z vrednostmi v polju s tujim ključem v drugi tabeli. Če želite na primer, da vrne vrstice, v katerih so za vsako stranko navedena vsa naročila, ustvarite poizvedbo, s katero na osnovi polja »ID stranke« združite tabeli »Stranke« in »Naročila«. V oknu z relacijami lahko ročno navedete polja, ki jih želite združiti. Če imate med tabelami že določeno relacijo, Access na osnovi relacije tabele določi privzeto združevanje. Poleg tega, če uporabite čarovnika za poizvedbe, vam Access nudi informacije, ki jih je zbral iz relacij tabele, ki ste jih že določili, da vas obvesti o izbiri in da vnaprej napolni nastavitve lastnosti z ustreznimi vrednostmi.

  • Relacije tabele obveščajo načrte obrazcev in poročil

    Ko naredite načrt obrazca ali poročila, Access prikaže informacije, ki jih je zbral iz relacij tabele, ki ste jih že določili, da vas obvesti o izbiri in da vnaprej napolni nastavitve lastnosti z ustreznimi vrednostmi.

  • Relacije tabele so osnova, s katero lahko vsilite referenčno integriteto, da preprečite osamljene zapise v zbirki podatkov. Osamljeni zapis je zapis, ki se sklicuje na drug zapis, ki ne obstaja – na primer zapis o naročilih, ki se sklicuje na neobstoječ zapis o strankah.

    Ko načrtujete zbirko podatkov, informacije razdelite v tabele, od katerih ima vsaka primarni ključ. Nato v sorodne tabele, ki se sklicujejo na te primarne ključe, dodate tuje ključe. Ti pari tujega in primarnega ključa oblikujejo osnovo za relacije tabele in poizvedbe z več tabelami. Pomembno je, da so sklici primarnega in tujega ključa sinhronizirani. Referenčna integriteta je odvisna od relacij tabele in zagotovi, da so sklici sinhronizirani.

Na vrh strani

Razumevanje referenčne integritete

Ko načrtujete zbirko podatkov, razdelite informacije zbirke podatkov v več tabel na osnovi zadeve, da zmanjšate odvečnost podatkov. Nato morate programu Access omogočiti, da podatke znova združi. To naredite tako, da skupna polja postavite v sorodne tabele. Če želite na primer predstaviti relacijo »ena proti mnogo«, vzamete primarni ključ iz tabele »ena« in ga kot dodatno polje dodate v tabelo »mnogo«. Če želite podatke združiti, vzame Access vrednost v tabeli »mnogo« in poišče ustrezno vrednost v tabeli »ena«. Na ta način se vrednosti v tabeli »mnogo« sklicujejo na ustrezne vrednosti v tabeli »ena«.

Recimo, da je med pošiljatelji in naročili relacija »ena proti mnogo«, pošiljatelje pa želite izbrisati. Če ima pošiljatelj, ki ga želite izbrisati naročila v tabeli »Naročila«, bodo naročila »osamljena«, ko izbrišete zapis »Pošiljatelj«. Naročila bodo vsebovala »ID pošiljatelja«, vendar ID ne bo več veljaven, ker zapis, na katerega se sklicuje več ne obstaja.

Namen referenčne integritete je preprečevanje osamljenih zapisov in ohranitev sinhroniziranih sklicev tako, da ne pride do takih hipotetičnih primerov.

Referenčno integriteto vsilite tako, da jo omogočite v relaciji tabele (glejte Vsiljevanje referenčne integritete za navodila po korakih). Ko je referenčna integriteta vzpostavljena, Access zavrne vse operacije, ki kršijo referenčno integriteto za relacijo tabele. To pomeni, da Access zavrne tako posodobitve, ki spremenijo cilj sklicevanja, kot tudi brisanja, s katerimi se odstrani cilj sklicevanja. Lahko se zgodi, da je treba povsem utemeljeno spremeniti primarni ključ pošiljatelja, ki ima naročila v tabeli »Naročila«. V takih primerih mora Access z eno operacijo samodejno posodobiti vse vrstice. S tem Access zagotovi, da se posodobitev dokonča v celoti, da zbirka podatkov ni v nedoslednem stanju, kjer so nekatere vrstice posodobljene, nekatere pa ne. Zaradi tega je v programu Access podprta možnost Kaskadno posodabljanje polj v relaciji. Ko vzpostavite referenčno integriteto, izberite možnost Kaskadno posodabljanje polj v relaciji in posodobite primarni ključ, Access samodejno posodobi vsa polja, ki se sklicujejo na primarni ključ.

Možno je tudi, da je treba vrstico in vse sorodne zapise izbrisati – na primer zapis »Pošiljatelj« in vsa podobna naročila za tega pošiljatelja. Zaradi tega je v programu Access podprta možnost Kaskadno brisanje polj v relaciji. Ko referenčno integriteto vsilite in izberete možnost Kaskadno brisanje polj v relaciji in nato zapis na strani primarnega ključa relacije izbrišete, Access samodejno izbriše vse zapise, ki se sklicujejo na primarni ključ.

Na vrh strani

Ogled relacij tabele

Če si želite ogledati relacije tabele, na zavihku Orodja zbirke podatkov kliknite Relacije. Odpre se okno z relacijami in prikažejo se vse obstoječe relacije. Če še ni določena nobena relacija tabele in okno z relacijami prvič odprete, vas Access pozove, da v okno dodate tabelo ali poizvedbo.

Odpiranje okna z relacijami

  1. Kliknite zavihek Datoteka in nato Odpri.

  2. Izberite in odprite zbirko podatkov.

  3. Na zavihku Orodja za zbirke podatkov v skupini Relacije kliknite Relacije.

    Če zbirka podatkov vsebuje relacije, se prikaže okno z relacijami. Če zbirka podatkov ne vsebuje relacij in prvič odpirate okno z relacijami, se odpre pogovorno okno Pokaži tabelo. Kliknite Zapri, če želite zapreti pogovorno okno.

  4. Na zavihku Načrt v skupini Relacije kliknite Vse relacije.

    S tem prikažete vse opredeljene relacije v zbirki podatkov. Bodite pozorni, da skrite tabele (tabele, za katere v pogovornem oknu Lastnosti potrdite polje Skrita) in njihove relacije ne bodo prikazane, razen če v pogovornem oknu Možnosti krmarjenja potrdite polje Pokaži skrite predmete.

Relacijo tabele predstavlja črta, ki povezuje tabele v oknu z relacijami. Relacija, ki ne vsili referenčne integritete je prikazana kot tanka črta med skupnimi polji, v katerih je relacija podprta. Ko izberete relacijo tako, da kliknete črto, je ta prikazana odebeljeno, da je razvidno, da ste jo izbrali. Če vsilite referenčno integriteto za to relacijo, je črta prikazana odebeljeno na koncu obeh strani. Poleg tega se nad odebeljenim delom črte na eni strani relacije prikaže številka 1 in znak za neskončnost () nad odebeljenim delom črte na drugi strani.

Ko je okno z relacijami aktivno, lahko na traku izbirate med temi ukazi:

Na zavihku Načrt v skupini Orodja:

  • Urejanje relacij    Odpre se pogovorno okno Urejanje relacij . Ko izberete relacijsko črto, lahko kliknete Urejanje relacij, če želite spremeniti relacijo tabele. Lahko tudi dvokliknete relacijsko črto.

  • Počisti postavitev    Vse tabele in relacije odstrani iz prikaza v oknu z relacijami. S tem ukazom samo skrijete tabele in relacije – jih ne izbrišete.

  • Poročilo o relacijah    Ustvari poročilo, ki prikaže tabele in relacije v zbirki podatkov. Poročilo pokaže samo tabele in relacije, ki niso skrite v oknu z relacijami.

Na zavihku Načrt v skupini Relacije:

  • Pokaži tabelo    Odpre se pogovorno okno Pokaži tabelo, kjer lahko izberete tabele in poizvedbe, ki si jih boste ogledali v oknu z relacijami.

  • Skrij tabelo    Skrije izbrano tabelo v oknu z relacijami.

  • Neposredne relacije    Prikaže vse relacije in sorodne tabele, če že niso prikazane, izbrane tabele v oknu z relacijami.

  • Vse relacije    V oknu z relacijami prikaže vse relacije in sorodne tabele v zbirki podatkov. Upoštevajte, da skrite tabele (tabele, za katere v pogovornem oknu Lastnosti tabele potrdite polje Skrita) in relacije ne bodo prikazane, razen, če v pogovornem oknu »Možnosti krmarjenja« ni izbrana možnost »Pokaži skrite predmete«.

  • Zapri    Okno z relacijami se zapre. Če ste naredili kaj sprememb pri postavitvi okna z relacijami, boste vprašani, ali želite spremembe shraniti.

Na vrh strani

Ustvarjanje relacije tabele

Relacijo tabele ustvarite v oknu z relacijami oziroma tako, da povlečete polje na podatkovni list iz podokna Seznam polj. Ko ustvarite relacijo med tabelami, imajo skupna polja lahko drugačna imena, čeprav imajo pogosto enaka. Polja pa morajo biti enakega podatkovnega tipa. Če je polje s primarnim ključem polje »Samoštevilo«, je lahko polje s tujim ključem polje »Število«, če imata obe polji lastnost VelikostPolja enako. Poiščete lahko na primer ujemajoča se polja »Samoštevilo« in »Število«, če je lastnost VelikostPolja obeh števil dolgo celo število. Kadar sta obe skupni polji številski, morata imeti enake nastavitve lastnosti VelikostPolja.

Ustvarjanje relacije tabele v oknu z relacijami

  1. Kliknite zavihek Datoteka in nato Odpri.

  2. Izberite in odprite zbirko podatkov.

  3. Na zavihku Orodja zbirke podatkov v skupini Relacije kliknite Relacije.

  4. Če relacij še niste določili, se samodejno prikaže pogovorno okno Pokaži tabelo. Če se pogovorno okno ne prikaže, na zavihku Načrt v skupini Relacije kliknite Pokaži tabelo.

    V pogovornem oknu Pokaži tabelo so prikazane vse tabele in poizvedbe v zbirki podatkov. Če si želite ogledati le tabele, kliknite Tabele. Če si želite ogledati le poizvedbe, kliknite Poizvedbe. Če pa si želite ogledati tabele in poizvedbe, kliknite Oboje.

  5. Izberite nekaj tabel ali poizvedb in nato kliknite Dodaj. Ko ste končali z dodajanjem tabel in poizvedb v okno z relacijami, kliknite Zapri.

  6. Povlecite polje (po navadi polje s primarnim ključem) iz ene tabele v skupno polje (polje s tujim ključem) v drugi tabeli. Če želite povleči več polj, pritisnite tipko CTRL, kliknite želena polja in jih nato povlecite.

    Odpre se pogovorno okno Urejanje relacij.

  7. Preverite, ali so prikazana imena polj skupna polja za relacijo. Če ime polja ni pravilno, kliknite ime polja in s seznama izberite novo polje.

    Če želite vzpostaviti referenčno integriteto za to relacijo, potrdite polje Vzpostavi referenčno integriteto. Če želite več informacij o referenčni integriteti, glejte Razumevanje referenčne integritete in Vzpostavljanje referenčne integritete.

  8. Kliknite Ustvari.

    Relacijska črta povezuje dve izbrani tabeli. Če potrdite polje Vsili referenčno integriteto, bo črta odebeljena na vsakem koncu. Poleg tega in samo če ste potrdili polje Vsili referenčno integriteto, se številka 1 prikaže nad odebeljenim delom črte na eni strani relacije in znak za neskončnost () nad odebeljenim delom črte na drugi strani.

    Opombe : 

    • Če želite ustvariti relacijo »ena proti ena«    Obe skupni polji (po navadi polji s primarnim in tujim ključem) morata imeti enolična indeksa. To pomeni, da naj bo lastnost Indeksirano teh polj nastavljena na Da (podvojeni vnosi niso dovoljeni). Če imata obe polji enoličen indeks, Access ustvari relacijo »ena proti ena«.

    • Če želite ustvariti relacijo »ena proti mnogo«    Polje na strani »ena« (po navadi primarnega ključa) relacije mora imeti enoličen indeks. To pomeni, da morate lastnost Indeksirano v polju nastaviti na Da (podvojeni vnosi niso dovoljeni). Polje na strani »mnogo« pa ne bi smelo imeti enoličnega indeksa. Polje na strani »mnogo« lahko ima indeks, če dovoljuje podvojene vnose. To pomeni, da morate lastnost Indeksirano za polje nastaviti na Ne ali Da (podvojeni vnosi dovoljeni). Kadar ima eno polje enoličen indeks drugo pa ne, Access ustvari relacijo »ena proti mnogo«.

Ustvarjanje relacije tabele v podoknu s seznamom polj

Polje lahko dodate v obstoječo tabelo, ki je odprta v pogledu podatkovnega lista, tako da ga povlečete iz podokna Seznam polj. V podoknu Seznam polj so prikazana polja, ki so na voljo v sorodnih tabelah, in tudi polja, ki so na voljo v drugih tabelah. Ko polje povlečete iz »druge« (nesorodne) tabele in nato dokončate čarovnika za iskanje, je nova relacija »ena proti mnogo« samodejno ustvarjena med tabelo v podoknu Seznam polj in tabelo, v katero ste polje povlekli. Relacija, ki jo ustvari Access, privzeto ne vsili referenčne integritete. Če želite vsiliti referenčno integriteto, morate relacijo urediti. Če želite več informacij, glejte Spreminjanje relacije tabele.

Odpiranje tabele v pogledu podatkovnega lista

  1. Na zavihku Datoteka kliknite Odpri.

  2. V pogovornem oknu Odpri izberite in odprite zbirko podatkov.

  3. V podoknu za krmarjenje z desno tipko miške kliknite tabelo, v katero želite dodati polje in ustvariti relacijo, in nato kliknite Odpri.

Odpiranje podokna »Seznam polj«

  • Pritisnite ALT+F8.

    Prikaže se podokno Seznam polj.

V podoknu Seznam polj so prikazane vse druge tabele v zbirki podatkov, združene v kategorije. Ko v pogledu podatkovnega lista delate v tabeli, Access prikaže polja v eni od dveh kategorij v podoknu Seznam polj: Polja, ki so na voljo v povezanih tabelah in Polja, ki so na voljo v ostalih tabelah. Prva kategorija prikazuje vse tabele, ki so v relaciji s tabelo, v kateri trenutno delate. Druga tabela prikazuje vse tabele, s katerimi tabela nima relacij.

Ko v podoknu Seznam polj kliknete znak plus (+), se ob imenu tabele prikaže seznam vseh polj, ki so na voljo v tej tabeli. Če želite v tabelo dodati polje, povlecite želeno polje iz podokna Seznam polj v tabelo v pogledu podatkovnega lista.

Dodajanje polja in ustvarjanje relacije v podoknu s seznamom polj

  1. V podoknu Seznam polj v razdelku Polja, ki so na voljo v ostalih tabelah, kliknite znak plus (+) zraven imena tabele, da prikažete seznam polj v njej.

  2. Povlecite želeno polje iz podokna Seznam polj v tabelo, ki je odprta v pogledu podatkovnega lista.

  3. Ko se prikaže vrstica za vstavljanje, spustite polje na ustrezno mesto.

    Zažene se Čarovnik za iskanje.

  4. Če želite dokončati korake v Čarovniku za iskanje, sledite navodilom.

    Polje se prikaže v tabeli v pogledu podatkovnega lista.

Ko polje povlečete iz »druge« (nesorodne) tabele in nato dokončate čarovnika za iskanje, je nova relacija »ena proti mnogo« samodejno ustvarjena med tabelo v podoknu Seznam polj in tabelo, v katero ste polje povlekli. Relacija, ki jo je ustvaril Access, privzeto ne vsili referenčne integritete. Če želite referenčno integriteto vsiliti, morate relacijo urediti. Če želite več informacij, glejte Spreminjanje relacije tabele.

Na vrh strani

Brisanje relacije tabele

Če želite odstraniti relacijo tabele, morate izbrisati relacijsko črto v oknu z relacijami. Kazalec pazljivo postavite tako, da kaže na relacijsko črto, in jo nato kliknite. Relacijska črta je prikazana odebeljeno, ko jo izberete. Ko relacijsko črto izberete, pritisnite tipko DELETE. Bodite pozorni, da z odstranitvijo relacije odstranite tudi podporo za referenčno integriteto, če je omogočena. Zaradi tega Access ne bo več samodejno preprečeval, da se na strani »mnogo« relacije osamljeni zapisi ne ustvarijo.

  1. Na zavihku Orodja za zbirke podatkov v skupini Relacije kliknite Relacije.

    Odpre se okno z relacijami. Če že niste določili nobene relacije in prvič odpirate okno z relacijami, se pojavi pogovorno okno Pokaži tabelo. Če se pojavi to pogovorno okno, kliknite Zapri.

  2. Na zavihku Načrt v skupini Relacije kliknite Vse relacije.

    Prikažejo se vse tabele v relaciji in črte relacij.

  3. Kliknite črto relacije za relacijo, ki jo želite izbrisati. Izbrana črta relacije je prikazana odebeljeno.

  4. Pritisnite tipko DELETE.

    ali

Kliknite z desno tipko miške in nato kliknite Izbriši.

  • Access bo morda prikazal sporočilo Ste prepričani, da želite trajno izbrisati izbrano relacijo iz zbirke podatkov? Če se prikaže to sporočilo, kliknite Da.

Opomba : Če katero koli od tabel v relaciji tabele uporablja druga oseba ali proces, ali je uporabljena v odprtem predmetu zbirke podatkov (na primer, obrazec), relacije ne bo mogoče izbrisati. Preden lahko odstranite relacijo, morate zapreti vse odprte predmete, v katerih so uporabljene tabele.

Na vrh strani

Spreminjanje relacije tabele

Relacijo tabele spremenite tako, da jo izberete v oknu z relacijami in jo nato uredite. Kazalec pazljivo postavite tako, da kaže na relacijsko črto in jo nato kliknite, da jo izberete. Ko relacijsko črto izberete, je prikazana odebeljeno. Izberite relacijsko črto, jo dvokliknite ali na zavihku Načrt v skupini Orodja kliknite Urejanje relacij. Prikaže se pogovorno okno Urejanje relacij.

Spreminjanje v pogovornem oknu Urejanje relacij

  1. Na zavihku Orodja za zbirke podatkov v skupini Relacije kliknite Relacije.

    Odpre se okno z relacijami. Če že niste določili nobene relacije in prvič odpirate okno z relacijami, se pojavi pogovorno okno Pokaži tabelo. Če se pojavi to pogovorno okno, kliknite Zapri.

  2. Na zavihku Načrt v skupini Relacije kliknite Vse relacije.

    Prikažejo se vse tabele v relaciji in črte relacij.

  3. Kliknite črto relacije za relacijo, ki jo želite spremeniti. Izbrana črta relacije je prikazana odebeljeno.

  4. Dvokliknite črto relacije.

  5. Spremenite relacijo in kliknite V redu.

    V pogovornem oknu Urejanje relacij lahko spremenite relacijo tabele. Spremenite lahko tabele, poizvedbe ali polja na kateri koli strani relacije. Nastavite lahko tudi vrsto stika ali vzpostavite referenčno integriteto in izberete kaskadno možnost. Če želite več informacij o vrsti stika in kako jo nastaviti, glejte Nastavljanje vrste stika. Če želite več informacij o vzpostavljanju referenčne integritete in izbiranju kaskadne možnosti, glejte Vzpostavljanje referenčne integritete.

Nastavljanje vrste stika

Ko določite relacijo tabele, bodo dejstva o relaciji obvestila načrte poizvedb. Če na primer določite relacijo med dvema tabelama in nato ustvarite poizvedbo, v kateri sta uporabljeni ti dve tabeli, Access samodejno na osnovi polj navedenih v relaciji izbere privzeti ustrezni polji. Začetne privzete vrednosti lahko preglasite, vendar se bodo vrednosti, ki jih ponudi relacija, izkazale za prave. Ker je iskanje ustreznih podatkov in združevanje podatkov iz nekaj tabel nekaj, kar boste pogosto delali v skoraj vseh razen najpreprostejših zbirkah podatkov, vam lahko nastavitev privzetih vrednosti z ustvarjanjem relacij prihrani čas.

Poizvedba za več tabel združi podatke iz več tabel tako, da v skupnih poljih poveže ustrezne vrednosti. Postopek, ki poveže ali združi ustrezne vrednosti, se imenuje stik. Predstavljajte si na primer, da želite prikazati naročila strank. Ustvarite poizvedbo, ki v polju »ID stranke« združi tabeli »Stranke« in »Naročila«. V rezultatu poizvedbe so podatki o strankah in naročilih samo iz tistih vrstic, ki se ujemajo.

Ena od vrednosti, ki jih lahko navedete za vsako relacijo je vrsta združevanje. Vrsta združevanja programu Access pove, kateri zapisi naj bodo vključeni v rezultat poizvedbe. Znova vzemimo na primer poizvedbo, ki v skupnih poljih, ki predstavljajo ID stranke, združi tabeli »Stranke« in »Naročila«. S privzeto vrsto združevanja (z imenom notranje združevanje) poizvedba vrne samo vrstice »Stranka« in »Naročilo«, kjer so skupna polja enaka (pravimo jim tudi združena polja).

Recimo, da želite vključiti vse stranke – tudi tiste, ki niso še ničesar naročile. Če želite to doseči, morate spremeniti vrsto združevanja iz notranjega združevanja v tako imenovano levo zunanje združevanje. Levo zunanje združevanje vrne vse tiste vrstice iz tabele, ki so na levi strani relacije in iz tabele na desni samo tiste, ki ustrezajo. Desno zunanje združevanje vrne vse tiste vrstice, ki so na desni in samo tiste, ki so ustrezne na levi.

Opomba : V tem primeru se »levo« in »desno« nanaša na položaj tabel v pogovornem oknu Urejanje relacij in ne v oknu z relacijami.

Razmislite o tem, kakšen rezultat boste običajno želeli pridobiti v poizvedbi, ki združi tabele v relaciji, in temu ustrezno nastavite vrsto stika.

Nastavljanje vrste stika

  1. V pogovornem oknu Urejanje relacij kliknite Vrsta stika.

    Odpre se pogovorno okno Lastnosti stika.

  2. Kliknite želeno izbiro in nato V redu.

V tej tabeli (uporabljata se tabeli »Stranke« in »Naročila«) so prikazane tri izbire, ki jih najdemo v pogovornem oknu Lastnosti stika, stik, ki ga uporabljajo, in ali so za vsako tabelo vključene vse vrstice ali ujemajoče se vrstice.

Izbira

Stik relacije

Leva tabela

Desna tabela

1. Vključi samo vrstice, kjer so polja, ki so v stiku, iz obeh tabel enaka.

Notranji stik

Ujemajoče se vrstice

Ujemajoče se vrstice

2. Vključi VSE zapise iz tabele »Stranke« in samo tiste zapise iz tabele »Naročila«, pri katerih so polja v stiku enaka.

Levi zunanji stik

Vse vrstice

Ujemajoče se vrstice

3. Vključi VSE zapise iz tabele »Naročila« in samo tiste zapise iz tabele »Stranke«, pri katerih so polja v stiku enaka.

Desni zunanji stik

Ujemajoče se vrstice

Vse vrstice

Ko izberete 2. ali 3. možnost, se na črti relacije prikaže puščica. Puščica kaže na tisto stran relacije, ki prikaže samo ujemajoče se vrstice.

Spreminjanje v pogovornem oknu »Lastnosti stika«

  1. Na zavihku Orodja za zbirke podatkov v skupini Relacije kliknite Relacije.

    Odpre se okno z relacijami. Če še niste določili nobene relacije in prvič odpirate okno z relacijami, se pojavi pogovorno okno Pokaži tabelo. Če se pojavi to okno, kliknite Zapri.

  2. Na zavihku Načrt v skupini Relacije kliknite Vse relacije.

    Prikazane so vse tabele v relaciji in črte relacij.

  3. Kliknite črto relacije za relacijo, ki jo želite spremeniti. Izbrana črta relacije je prikazana odebeljeno.

  4. Dvokliknite črto relacije.

    Odpre se pogovorno okno Urejanje relacij.

  5. Kliknite Vrsta stika.

  6. V pogovornem oknu Lastnosti stika kliknite možnost in nato V redu.

  7. Po želji spremenite relacijo in kliknite V redu.

Na vrh strani

Vzpostavljanje referenčne integritete

Namen uporabe referenčne integritete je preprečevanje osamljenih zapisov in ohranjanje sinhroniziranih sklicev, tako da se ne zgodi, da se zapisi sklicujejo na druge zapise, ki več ne obstajajo. Referenčno integriteto vsilite tako, da jo omogočite v relaciji tabele. Ko referenčno integriteto enkrat vsilite, Access zavrne operacije, katere bi jo kršile v relaciji tabele. Access zavrne posodobitve, ki spremenijo cilj sklica, in prav tako brisanje, s katerim se cilj sklicevanja odstrani. Če želite, da Access razširja referenčne posodobitve in brisanje tako, da se z njimi spremeni vse sorodne vrstice, glejte Nastavitve kaskadnih možnosti.

Vklop ali izklop referenčne integritete

  1. V oknu z relacijami kliknite črto relacije za relacijo, ki jo želite spremeniti. Izbrana črta relacije je prikazana odebeljeno.

  2. Dvokliknite črto relacije.

Odpre se pogovorno okno Urejanje relacij.

  1. Potrdite polje Vzpostavi referenčno integriteto.

  2. Po želji spremenite relacijo in kliknite V redu.

Ko vzpostavite referenčno integriteto, veljajo ta pravila:

  • Vrednosti ni mogoče vnesti v polje s tujim ključem tabele v relaciji, če je ni v polju s primarnim ključem primarne tabele – tako se ustvarijo osamljeni zapisi.

  • Zapisa ni mogoče izbrisati iz primarne tabele, če so v tabeli v relaciji ujemajoči se zapisi. Iz tabele »Zaposleni« ni mogoče izbrisati na primer zapisa o zaposlenem, če so mu dodeljena naročila v tabeli »Naročila«. Lahko pa izbrišete primarni zapis in vse zapise v relaciji, tako da potrdite polje Kaskadno brisanje polj v relaciji.

  • Vrednosti primarnega ključa v primarni tabeli ne morete spremeniti, če s tem ustvarite osamljene zapise. Številke naročila v tabeli »Naročila« na primer ne morete spremeniti, če so vrstični elementi dodeljeni naročilu v tabeli »Podrobnosti o naročilu«. Lahko pa z eno operacijo posodobite primarni zapis in vse sorodne zapise, tako da potrdite polje Kaskadno posodabljanje polj v relaciji.

    Opombe : Če pri omogočanju referenčne integritete pride do težav, upoštevajte, da je treba izpolnjevati te pogoje, če želite referenčno integriteto vsiliti:

    • Skupno polje v primarni tabeli mora biti primarni ključ ali imeti enoličen indeks.

    • Skupna polja morajo biti istega podatkovnega tipa. Izjema je polje »Samoštevilo«, ki je lahko v relaciji s poljem »Število«, ki ima lastnost VelikostPolja nastavljeno na Dolgo celo število.

    • Obe tabeli morata biti v isti zbirki podatkov Access. Referenčne integritete v povezanih tabelah ni mogoče vsiliti. Če pa so izvirne tabele v obliki zapisa Access, lahko odprete zbirko podatkov, v kateri so shranjene, in v zbirki podatkov omogočite referenčno integriteto.

Nastavljanje kaskadnih možnosti

Lahko pride do primera, v katerem bo treba iz utemeljenih razlogov spremeniti vrednost na strani »ena« relacije. V takem primeru mora Access z eno operacijo samodejno posodobiti vse vrstice. Na ta način se posodabljanje dokonča v celoti tako, da zbirka podatkov ni v nedoslednem stanju – kjer so nekatere vrstice posodobljene, nekatere pa ne. Access omogoča, da se tej težavi izognete tako, da podpira možnost Kaskadno posodabljanje polj v relaciji. Ko vsilite referenčno integriteto in izberete možnost Kaskadno posodabljanje polj v relaciji in tako posodobite primarni ključ, Access samodejno posodobi vsa polja, ki se sklicujejo na primarni ključ.

Morda morate izbrisati vrstico in vse sorodne zapise – na primer zapis o pošiljatelju in vse sorodne zapise pošiljatelja. Zaradi tega Access podpira možnost Kaskadno brisanje polj v relaciji.. Ko vsilite referenčno integriteto in izberete možnost možnost Kaskadno brisanje polj v relaciji., Access samodejno izbriše vse zapise, ki se sklicujejo na primarni ključ, ko izbrišete zapis, ki vsebuje primarni ključ.

Vklop ali izklop kaskadnega posodabljanja in/ali kaskadnega brisanja

  1. V oknu z relacijami kliknite črto relacije za relacijo, ki jo želite spremeniti. Izbrana črta relacije je prikazana odebeljeno.

  2. Dvokliknite črto relacije.

Odpre se pogovorno okno Urejanje relacij.

  1. Potrdite polje Vzpostavi referenčno integriteto.

  2. Potrdite polje Kaskadno posodabljanje polj v relaciji ali Kaskadno brisanje polj v relaciji ali pa obe polji.

  3. Po želji spremenite relacijo in kliknite V redu.

Opomba : Če je primarni ključ polje s samoštevilom, potrditev polja Kaskadno posodabljanje polj v relaciji ne bo vplivala na nič, ker v polju s samoštevilom vrednosti ni mogoče spremeniti.

Na vrh strani

Opomba : Strojni prevod – zavrnitev odgovornosti: Ta članek je bil preveden z računalniškim programom brez človeškega posredovanja. Microsoft skuša s strojno prevedenimi članki vsebino o Microsoftovih izdelkih, storitvah in tehnologijah približati osebam, ki ne razumejo angleščine. Ker je bil članek strojno preveden, so lahko v njem jezikovne, slovnične in pravopisne napake.

Razširite svoja znanja
Oglejte si izobraževanje
Prvi dobite nove funkcije
Pridružite se programu Office Insider

Vam je bila informacija v pomoč?

Zahvaljujemo se vam za povratne informacije.

Zahvaljujemo se vam za povratne informacije. Videti je, da bi vam prišla prav pomoč enega od naših Officeovih agentov za podporo.

×