Uporaba relacij

Uvod v relacije tabel

Vaš brskalnik ne podpira tega videoposnetka.

Poskusite!

Moč relacijske zbirke podatkov je v združevanju podatkov v tabelah. Če želite to narediti, morate najprej vzpostaviti relacije med tabelami. Nato naj Access dela za združevanje podatkov v poizvedbah, obrazcih in poročilih.

Če želite videti vse obstoječe relacije, določene 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 relacij tabele, vas Access pozove, da dodate tabelo ali poizvedbo. Preden lahko dodate relacijo, potrebujete vsaj dve tabeli. V idealnem primeru najprej ustvarite vse svoje tabele. Če želite izvedeti več, glejte Ustvarjanje relacij s čarovnikom za iskanje in Ustvarjanje relacij v podoknu z relacijami.

Razumevanje pogleda »Relacije«

Črte v pogledu »Odnosi« označujejo povezave med tabelami. Na spodnji sliki je tabela na levi strani nadrejena tabela. Tabela na desni je podrejena tabela. Vrstica med njima povezuje polja (v tem primeru ID naročila in ID izdelka), ki se ujemajo s podatki.

Relacije so prikazane s črtami, narisanimi med nadrejenimi in podrejenimi polji.

Črte in simboli vam pokažejo, kako so tabele povezane:

  • Debela povezovalna črta pomeni, da vsilite referenčno integriteto podatkov. to je dobro. Vaši podatki so tako sinhronizirani.

  • Na sliki številka 1 pomeni, da je v tej tabeli lahko le en ujemajoči se zapis. V tabeli Naročila, prikazani tukaj, se vsak zapis ujema le z enim naročilom.

  • Simbol ∞ pomeni, da lahko več zapisov vsebuje isti ID. V tabeli s podrobnostmi naročila, prikazani tukaj, je lahko naročilo (označeno z ID-jem naročila) prikazano večkrat, ker lahko isto naročilo vključuje več izdelkov.

Vrste odnosov med tabelami

Med tabelami so na voljo tri vrste odnosov:

  • Ena proti ena. Ko se vsak element v vsaki tabeli prikaže le enkrat. Vsak zaposleni ima lahko na primer za uporabo le en avtomobil podjetja. Če želite več informacij, glejte Ustvarjanje relacij »ena proti ena«.

  • Ena proti mnogo. Če je en element v eni tabeli lahko v relaciji z več elementi v drugi tabeli. Vsako naročilo lahko na primer vključuje več izdelkov.

  • Mnogo proti mnogo. Če je lahko več elementov v eni tabeli v relaciji z enim ali več elementi v drugi tabeli. Vsako naročilo ima lahko na primer več izdelkov, vsak izdelek pa se lahko pojavi v več naročilih. Če želite izvedeti več, glejte Ustvarjanje relacij »mnogo na mnogo«.

Relacije »ena proti mnogo«

Ena od najpogostejših relacij med tabelami v dobro načrtovanih zbirkah podatkov je relacija »ena proti mnogo«.

Odnosi med tabelami so običajno odvisni od primarnega ključa v eni od tabel. Ne snemi, da je primarni ključ enoličen identifikator (pogosto številski) za vsak zapis. Če želite prikazati, da so informacije v dveh različnih tabelah povezane, običajno ustvarite relacijo s primarnim ključem iz ene od tabel.

V tukajšnji relaciji ima na primer vsaka oseba v tabeli »Stiki« ID, ki je primarni ključ (ki ga označuje simbol ključa). Ta ID je prikazan tudi v polju Lastnik v tabeli Osnovna sredstva. Če želite osebi, povezani z sredstvom, pošljite e-poštno sporočilo, pridobite vrednost iz polja E-poštni naslov. To naredite tako, da poiščete vrednost v polju Lastnik tabele »Sredstvo« in nato poiščete ta ID v tabeli »Stiki«. Številka 1 na enem koncu povezovalne črte in simbol ∞ na drugem koncu pomeni, da gre za relacijo »ena proti mnogo« , zato je en stik morda povezan z veliko sredstvi.

Relacija »ena proti mnogo«

Urejanje relacije

Če spreminjate obstoječo zbirko podatkov ali če ste ustvarili zbirko podatkov iz predloge, lahko uredite obstoječe relacije tako, da ustrezajo vašim potrebam.

Opomba: Če so tabele, v kateri želite delati, v uporabi, jih morate najprej zapreti, skupaj z odprtimi predmeti, ki jih uporabljajo.

  1. Izberite Orodja zbirke podatkov > relacije.

  2. Izberite črto, ki povezuje dve povezani tabeli.

    Namig: Če ne vidite relacije, ki jo želite, na zavihku Načrt v skupini Relacije izberite Vse relacije.

  3. Na zavihku Načrt izberite Uredi relacije.

    Editing am existing relationship between tables

    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 Relacije niso prikazane v tem vrstnem redu, postavitev tabele v pogovornem oknu kaže smer črte, ki ju povezuje, in relacijo. To je pomembno, če je na primer relacija »ena proti mnogo«, ker kaže, da je tabela na levi strani tista (nadrejena tabela), tabela na desni pa mnogo (podrejena tabela).

  4. Če želite spremeniti polja, ki povezujejo tabele, izberite drugo polje pod vsako prikazano tabelo. V tem primeru se polje »ID« v tabeli »Stranke« poveže s poljem »ID stranke« v tabeli »Naročila«.

  5. Spremenite način, kako Access sinhronizira podatke med tabelami.

    Vzpostavi referenčno integriteto

    Če želite preprečiti neveljavne podatke in ohraniti sklice v sinhroniziranih relacijah med tabelami, izberite to možnost.

    Recimo, da imate med tabelama »Zaposleni« in »Ugodnosti zaposlenih« odnos »ena proti ena«. Če zaposleni zapusti podjetje in ga odstranite iz tabele zaposlenih, je odstranjen tudi povezan zapis zaposlenega v tabeli »Ugodnosti za zaposlene«.

    Včasih referenčna integriteta ni smiselna. Recimo, da imate relacijo »ena proti mnogo« med »Pošiljatelji« in »Naročila«. Pošiljatelja izbrišete in ta pošiljatelj 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 primer, ne obstaja več.

    Kaskadno posodabljanje polj v povezavi

    Če želite, da so podatki v povezanih poljih posodobljeni v vseh povezanih tabelah, izberite to možnost.

    Recimo, da želite le 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 drugih povezanih tabelah, ki vključujejo tudi ID pošiljatelja, kot je na primer tabela »Naročila«.

    Kaskadno brisanje povezanih zapisov

    Izbira tega je odvisna od tega, ali želite ohraniti zapise v nekaterih tabelah, čeprav bodo 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 sklicevajo na ID pošiljatelja, vključno z vsemi naročili (v tabeli »Naročila«), ki jih je pošiljatelj poslal. To možnost izberite le, če ste prepričani, da želite izbrisati zgodovino naročil.

  6. Č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, v kateri želite delati, v uporabi, jih morate najprej zapreti, skupaj z odprtimi predmeti, ki jih uporabljajo.

Če želite odstraniti relacijo tabele:

  1. Izberite Orodja zbirke podatkov > relacije.

  2. Izberite črto, ki povezuje dve povezani tabeli.

    Namig: Če ne vidite relacije, ki jo želite, na zavihku Načrt v skupini Relacije izberite Vse relacije.

  3. Izberite tipko Delete. Če ste pozvani, da potrdite brisanje relacije, izberite Da.

Opomba: Ko odstranite relacijo, odstranite tudi podporo za referenčno integriteto za to relacijo, če je ta morda na voljo. Zaradi tega Access ne bo več preprečeval sprememb, zaradi katerih se na strani »mnogo« relacije »ena proti mnogo« osamljeni zapisi ne spremenijo.

Želite več?

Ustvarjanje, urejanje ali brisanje relacije

Ali potrebujete dodatno pomoč?

Ali želite več možnosti?

Raziščite ugodnosti naročnine, prebrskajte izobraževalne tečaje, preberite, kako zaščitite svojo napravo in še več.

Skupnosti vam pomagajo postaviti vprašanja in odgovoriti nanje, posredovati povratne informacije in prisluhniti strokovnjakom z bogatim znanjem.