Lentelių ryšių vadovas

Lentelių ryšių vadovas

Svarbu :  Šis straipsnis išverstas naudojant mašininį vertimą, žr. atsakomybės atsisakymą. Su šio straipsnio versija anglų kalba galite susipažinti čia .

Vienas iš tikslų, siekiant sukurti gerą duomenų bazę, yra pašalinti duomenų perteklumą (duomenų dublikatus). Siekiant šio tikslo, duomenis reikia išskirstyti į kelias temomis pagrįstas lenteles, kad kiekvienas elementas būtų pateiktas tik kartą. Tada reikia nurodyti būdą, kaip programoje Access vėl sujungti išskirstytą informaciją. Tai atlikite sukurdami bendruosius laukus susijusiose lentelėse. Tačiau norėdami tai atlikti tinkamai, turite išsiaiškinti lenteles siejančius ryšius, o tada nurodyti šiuos ryšius duomenų bazėje.

Šiame straipsnyje

Įvadas

Lentelių ryšių tipai

Kodėl reikia kurti lentelių ryšius

Supratimas, kas yra nuorodų vientisumas

Lentelių ryšių peržiūra

Lentelių ryšio kūrimas

Lentelių ryšio naikinimas

Lentelių ryšio keitimas

Nuorodų vientisumo įgalinimas

Įžanga

Sukūrę kiekvienai savo duomenų bazės temai skirtą lentelę, turite pateikti programai Access būdą, kaip prireikus informaciją vėl sujungti. Norėdami tai atlikti, į susijusias lenteles turite įtraukti bendrųjų laukų ir nurodyti lenteles siejančius ryšius. Tada galėsite kurti užklausas, formas ir ataskaitas, kuriose bus iš karto rodoma keliose lentelėse pateikta informacija. Pvz., į čia pateiktą formą įtraukta iš kelių lentelių nuskaityta informacija.

Forma Užsakymai, kurioje iškart rodoma susijusi informacija, pateikta penkiose lentelėse

1. Informacija į šią formą perkelta iš lentelės Klientai...

2. ...lentelės Užsakymai...

3. ...lentelės Produktai...

4. ...ir lentelės Užsakymo išsami informacija.

Lauke Išrašyti sąskaitą pateiktas kliento pavadinimas nuskaitytas iš lentelės Klientai, Užsakymo ID ir Užsakymo data reikšmės perkeltos iš lentelės Užsakymai, Produktas reikšmė perkelta iš lentelės Produktai, o Vieneto kaina ir Kiekis reikšmės perkeltos iš lentelės Užsakymo išsami informacija. Siekiant, kad iš kiekvienos lentelės į formą būtų perkelta informacija, šios lentelės yra įvairiausiais būdais viena su kita susietos.

Pateiktas pavyzdys, kai lentelių laukai turi būti suderinti taip, kad juose būtų rodoma to paties užsakymo informacija. Taip suderinti pavyksta naudojant lentelių ryšius. Lentelių ryšys sugretina rakto laukuose  (dažnai tuose, kuriems abiejose lentelėse suteiktas toks pat pavadinimas) pateiktus duomenis. Dažniausiai šie atitinkantys laukai yra vienos lentelės pirminis raktas, pateikiantis kiekvieno įrašo unikalų identifikatorių, ir kitos lentelės išorinis raktas. Pvz., jei darbuotojus reikia susieti su užsakymais, už kuriuos jie yra atsakingi, galima sukurti ryšį tarp lentelių Darbuotojai ir Užsakymai laukių Darbuotojo ID.

Darbuotojo ID, kuris lentelėje Darbuotojai naudojamas kaip pirminis raktas, o lentelėje Užsakymai – kaip išorinis.

1. Darbuotojo ID rodomas abiejose lentelėse – kaip pirminis raktas...

2. ...kaip išorinis raktas.

Puslapio viršus

Lentelių ryšių tipai

Yra trys programoje "Access" lentelių ryšių tipai.

  • Ryšys „vienas su daugeliu“

    Kaip pavyzdžiu pasinaudokime užsakymo sekimo duomenų baze, kurioje yra lentelės Klientai ir Užsakymai. Klientas gali pateikti bet kokį skaičių užsakymų. Vadinasi, lentelėje Užsakymai gali būti pateikta po keletą kiekvieno lentelėje Klientai nurodyto kliento užsakymų. Ryšys tarp lentelių Klientai ir Užsakymai yra „vienas su daugeliu“.

    Norėdami, kad ryšys „vienas su daugeliu“ būtų perteiktas duomenų bazės dizaine, lentelės, kurios „vienas“ elementas siejamas ryšiu, pirminį raktą kaip papildomą lauką (-us) įtraukite į lentelę, kurios „daugelis“ elementų siejami ryšiais. Pvz., šiuo atveju naują lauką , t. y. lentelės Klientai lauką ID,  reikia įtraukti į lentelę Užsakymai ir pavadinti jį Kliento ID. Tada naudodama lentelės Užsakymai lauke Kliento ID nurodytą numerį Access galės rasti kiekvieną užsakymą atitinkantį klientą.

  • Ryšys „daugelis su daugeliu“

    Dabar pažvelkime į lentelių Produktai ir Užsakymai ryšį. Į vieną užsakymą gali būti įtrauktas daugiau nei vienas produktas. Kita vertus, vienas produktas gali būti nurodytas keliuose užsakymuose. Todėl lentelėje Produktai gali būti pateikta po kelis kiekvieną lentelės Užsakymai įrašą atitinkančius įrašus. Be to, lentelėje Užsakymai gali būti pateikta po kelis kiekvieną lentelės Produktai įrašą atitinkančius įrašus. Toks ryšys vadinamas „daugelis su daugeliu“. Nepamirškite, kad nustatant lentelių ryšį „daugelis su daugeliu“, svarbu atsižvelgti į abi ryšiu siejamas puses.

    Norėdami perteikti ryšį „daugelis su daugeliu“ turite sukurti trečią lentelę (dažnai vadinamą jungiamąja lentele), kurioje ryšys „daugelis su daugeliu“ būtų padalytas į du ryšius „vienas su daugeliu“. Į trečią lentelę turite įterpti pirminį raktą iš abiejų lentelių. Tada trečioje lentelėje bus užfiksuotas kiekvienas kartas arba atvejis, kai nustatomas ryšys. Pvz., lentelių Užsakymai ir Produktai ryšys yra „daugelis su daugeliu“, apibrėžiamas sukuriant du ryšius „vienas su daugeliu“ su lentele Užsakymo išsami informacija. Viename užsakyme gali būti nurodyti keli produktai, o kiekvienas produktas gali būti nurodytas keliuose užsakymuose.

  • Ryšys „vienas su vienu“

    Jei ryšio tipas yra „vienas su vienu“, vadinasi, kiekvieną pirmosios lentelės įrašą gali atitikti tik vienas antrosios lentelės įrašas, o kiekvieną antrosios lentelės įrašą gali atitikti tik vienas pirmosios lentelės įrašas. Šis ryšys nėra įprastas, nes dažniausiai tokiu būdu susijusi informacija saugoma toje pačioje lentelėje. Ryšį „vienas su vienu“ galite naudoti norėdami padalyti iš daug laukų sudarytą lentelę, atskirti norimą apsaugoti lentelės dalį arba saugoti informaciją, kuri taikoma tik antriniam pagrindinės lentelės rinkiniui. Nustatant šį ryšį, būtina užtikrinti, kad abiejose lentelėse bus bendrinami tie patys laukai.

Puslapio viršus

Kodėl reikia kurti lentelių ryšius

Lentelių ryšius galite kurti naudodami langą Ryšiai (detalusis būdas) arba vilkdami laukus iš srities Laukų sąrašas. Access naudoja lentelių ryšius, kad nuspręstų, kaip jungti lenteles, kai jas reikia naudoti duomenų bazės objekte. Yra keletas priežasčių, kodėl prieš kuriant kitus duomenų basės objektus, pvz., formas, užklausas ir ataskaitas, reikia sukurti lentelių ryšius.

  • Lentelių ryšiai nurodo užklausų dizainą

    Norint naudoti daugiau nei vienos lentelės įrašus, dažnai tenka sukurti lenteles sujungiančią užklausą. Pirmosios lentelės pirminio rakto laukų reikšmes užklausa sugretina su antrosios lentelės išorinių raktų laukais. Pvz., norėdami gauti eilutes, kuriose išvardyti visi kiekvieno kliento užsakymai, turite sukurti užklausą, jungiančią lenteles Klientai ir Užsakymai pagal lauką Kliento ID. Lange Ryšiai galite rankiniu būdu nurodyti norimus jungti laukus. Tačiau jei lentelių ryšys jau apibrėžtas, Access jungs numatytuoju būdu, pagal esamą lentelių ryšį. Be to, jei naudosite vieną iš užklausos vediklių, Access surinks informaciją, kurią pateikėte apibrėždami lentelių ryšius, ir nurodys žinomus pasirinkimus bei iš anksto automatiškai įves atitinkamas numatytąsias ypatybių parametrų reikšmes.

  • Lentelių ryšiai nurodo formų ir ataskaitų dizainą

    Projektuojant formą arba ataskaitą, Access surinks informaciją, kurią pateikėte apibrėždami lentelių ryšius, ir nurodys informacija pagrįstus pasirinkimus bei iš anksto automatiškai įves atitinkamas numatytąsias ypatybių parametrų reikšmes.

  • Ryšiai yra platforma, kurią galėsite naudoti kaip pagrindą įgalindami nuorodų vientisumą, padedantį išvengti vienišųjų narių įrašų duomenų bazėje. Vienišojo nario įrašas nurodo kitą įrašą, kurio nėra, pvz., užsakymo įrašas, nurodantis nesamą kliento įrašą.

    Kurdami duomenų bazę, informaciją suskirstote į lenteles, kurių kiekviena turi pirminį raktą. Tada į susijusias lenteles įtraukiate išorinių raktų, nurodančių tuos pirminius raktus. Šios išorinių ir pirminių raktų poros yra lentelių ryšių ir kelių lentelių užklausų pagrindas. Svarbu, kad šios išorinių ir pirminių raktų poros išliktų sinchronizuotos. Nuorodų vientisumas, priklausomas nuo lentelių ryšių, padeda užtikrinti nuorodų sinchronizaciją.

Puslapio viršus

Supratimas, kas yra nuorodų vientisumas

Kurdami duomenų bazę, jos informaciją dalijate į daugelį temomis pagrįstų lentelių, kad būtų sumažintas duomenų perteklumas. Tada įtraukdami bendruosius laukus į susijusias lenteles, pateikiate programai Access būdą, kuriuo ji vėl galėtų sujungti informaciją. Pvz., norėdami nurodyti ryšį „vienas su daugeliu“, lentelės, kurioje yra „vienas“ elementas, pirminį raktą kaip papildomą lauką įtraukiate į lentelę, kurioje yra „daugelis“ elementų. Vėl jungdama duomenis, Access ieškos lentelės, kurioje yra „daugelis“ elementų, reikšmės atitikmens lentelėje, kurioje yra „vienas“ elementas. Taip lentelės, kurioje yra „daugelis“ elementų, reikšmės nurodo atitinkamas lentelės, kurioje yra „vienas“ elementas, reikšmes.

Tarkim, tarp lentelių Siuntėjai ir Užsakymai yra ryšys „vienas su daugeliu“ ir jūs norite panaikinti elementą Siuntėjas. Jei lentelėje Užsakymai nurodyta norimo naikinti siuntėjo užsakymų, panaikinus elemento Siuntėjas įrašą tie užsakymai taps vienišaisiais nariais. Lentelėje Užsakymai siuntėjo ID išliks, bet šis ID nebegalios, nes nebebus jo nurodomo įrašo.

Nuorodų vientisumo tikslas yra panaikinti vienišųjų narių sukūrimo galimybę ir užtikrinti nuorodų sinchronizaciją, kad pavyktų išvengti tokių hipotetinių situacijų.

Nuorodų vientisumas įgalinamas kuriant lentelių ryšį (nuoseklių instrukcijų žr. Nuorodų vientisumo įgalinimas). Jį įgalinus, Access atmes visas operacijas, pažeidžiančias tuo lentelių ryšiu pagrįstą nuorodų vientisumą. Tai reiškia, kad Access atmes naujinimo veiksmus, galinčius pakeisti tikslinę nuorodą, ir naikinimo veiksmus, galinčius pašalinti tikslinę nuorodą. Gali būti, kad reikia pakeisti pirminį raktą, nurodantį siuntėją, kuris turi užsakymų lentelėje Užsakymai. Tokiu atveju reikia, kad vykdydama tą pačią operaciją Access automatiškai atnaujintų visas eilutes, kurioms buvo padaryta įtakos. Taip Access užtikrins visišką atnaujinimą, todėl duomenų bazė neliks negalutinės būsenos, kai kai kurios eilutės atnaujintos, o kai kurios ne. Todėl Access palaiko parinktį Susijusius laukus naujinti pakopomis. Įgalinus nuorodų vientisumą ir pasirinkus parinktį Susijusius laukus naujinti pakopomis, o tada naujinant pirminį raktą, Access automatiškai atnaujins visus pirminį raktą nurodančius laukus.

Taip pat gali būti, kad teks panaikinti eilutę ir visus susijusius įrašus, pvz., įrašą Siuntėjas ir visus su tuo siuntėju susijusius įrašus. Todėl Access palaiko parinktį Susijusius įrašus naikinti pakopomis. Jei įgalinę nuorodų vientisumą ir pasirinkę Susijusius įrašus naikinti pakopomis panaikinsite įrašą ryšio siejamoje lentelėje, kurioje yra pirminis raktas, Access automatiškai panaikins pirminį raktą nurodančius įrašus.

Puslapio viršus

Lentelių ryšių peržiūra

Norėdami peržiūrėti lentelių ryšius, skirtuke Duomenų bazės įrankiai spustelėkite Ryšiai. Atidaromas langas Ryšiai, kuriame rodomi visi esami ryšiai. Jei jokie lentelės ryšiai nebuvo apibrėžti ir langą Ryšiai atidarysite pirmą kartą, Access paragins į langą įtraukti lentelę arba užklausą.

Lango Ryšiai atidarymas

  1. Spustelėkite Failas ir spustelėkite Atidaryti.

  2. Pažymėkite ir atidarykite duomenų bazę.

  3. Skirtuko Duomenų bazės įrankiai grupėje Ryšiai spustelėkite Ryšiai.

    Jei duomenų bazėje yra ryšių, bus atidarytas langas Ryšiai. Jei duomenų bazėje ryšių nėra ir langą Ryšiai atidarote pirmą kartą, bus rodomas dialogo langas Lentelės rodymas. Spustelėkite Uždaryti, kad uždarytumėte dialogo langą.

  4. Skirtuko Dizainas grupėje Ryšiai spustelėkite Visi ryšiai.

    Rodomi visi apibrėžti duomenų bazės ryšiai. Nepamirškite, kad paslėptos lentelės (lentelės, kurių dialogo lange Ypatybės pažymėtas žymės langelis Paslėptas) ir jų ryšiai nerodomi, jei dialogo lange Naršymo parinktys nepažymėtas žymės langelis Rodyti paslėptus objektus.

Lentelių ryšį nurodo ryšio linija, nubrėžta tarp lentelių lange Ryšiai. Jei ryšys nuorodų vientisumo neįgalina, jis rodomas kaip plona linija tarp bendrųjų ryšio siejamų laukų. Jei norėdami pažymėti ryšį spustelėsite jį nurodančią liniją, linija pastorės, nurodydama, kad ji pažymėta. Jei įgalinsite šio ryšio nuorodų vientisumą, abu linijos galai pastorės. Be to, viename ryšio linijos gale virš storosios jos dalies bus rodomas skaičius 1, o kitame ryšio linijos gale virš storosios jos dalies bus rodomas begalybės simbolis ().

Suaktyvintame lange Ryšiai galite rinktis iš toliau nurodytų juostelėje esančių komandų.

Skirtuko Dizainas grupėje Įrankiai:

  • Ryšių redagavimas    atidaro dialogo langą Ryšių redagavimas. Pažymėję ryšio liniją galite spustelėti Ryšių redagavimas, kad galėtumėte pakeisti lentelių ryšius. Taip pat galite dukart spustelėti ryšio liniją.

  • Valyti maketą    pašalina visas lenteles ir ryšius, kad jie nebūtų rodomi lange Ryšiai. Įsidėmėkite, kad ši komanda tik paslepia lenteles ir ryšius, bet jų nepanaikina.

  • Ryšių ataskaita    sukuria ataskaitą, kurioje rodomos duomenų bazės lentelės ir ryšiai. Ataskaitoje rodomos tik tos lentelės ir ryšiai, kurie nėra paslėpti lange Ryšiai.

Skirtuko Dizainas grupėje Ryšiai:

  • Lentelės rodymas    atidaro dialogo langą Lentelės rodymas, kad galėtumėte pažymėti lange Ryšiai norimas peržiūrėti lenteles ir užklausas.

  • Slėpti lentelę    paslepia pažymėtą lentelę lange Ryšiai.

  • Tiesioginiai ryšiai    lange Ryšiai rodo visus pažymėtos lentelės ryšius ir su ja susijusias lenteles, jei ši informacija dar nėra rodoma.

  • Visi ryšiai    lange Ryšiai rodo visus duomenų bazės ryšius ir susijusias lenteles. Nepamirškite, kad paslėptos lentelės (lentelės, kurių dialogo lange Ypatybės pažymėtas žymės langelis Paslėpta) ir jų ryšiai nerodomi, jei dialogo lange Naršymo parinktys nepažymėta Rodyti paslėptus objektus.

  • Uždaryti    uždaro langą Ryšiai. Jei atliksite kokių nors lango Ryšiai maketo keitimų, būsite klausiami, ar norite juos įrašyti.

Puslapio viršus

Lentelių ryšio kūrimas

Norėdami kurti lentelių ryšį galite naudoti langą Ryšiai arba vilkti laukus į duomenų lapą iš srities Laukų sąrašas. Kuriant lentelių ryšį, bendriesiems laukams nebūtina suteikti tokius pat pavadinimus, bet dažniausiai būtent taip ir būna. Tačiau šiuose laukuose turi būti tokio pat tipo duomenys. Taigi, jei pirminio rakto laukas yra laukas Automatinis numeravimas, išorinio rakto laukas gali būti laukas Skaičius, jei sutampa abiejų laukų ypatybė Lauko dydis (FieldSize). Pvz., galite gretinti laukus Automatinis numeravimas ir Skaičius, jei abiejų laukų ypatybė Lauko dydis (FieldSize) yra ilgasis sveikasis skaičius. Jei abu bendrieji laukai yra Skaičius, jų ypatybės Lauko dydis (FieldSize) parametras turi būti toks pat.

Lentelių ryšio kūrimas naudojant langą Ryšiai

  1. Spustelėkite Failas ir spustelėkite Atidaryti.

  2. Pažymėkite ir atidarykite duomenų bazę.

  3. Skirtuko Duomenų bazės įrankiai grupėje Ryšiai spustelėkite Ryšiai.

  4. Jei jokių ryšių dar neapibrėžėte, bus automatiškai atidarytas langas Lentelės rodymas. Jei jis neatidaromas, skirtuko Dizainas grupėje Ryšiai spustelėkite Lentelės rodymas.

    Dialogo lange Lentelės rodymas rodomos visos duomenų bazės lentelės ir užklausos. Jei norite matyti tik lenteles, spustelėkite Lentelės. Jei norite matyti tik užklausas, spustelėkite Užklausos. Jei norite matyti lenteles ir užklausas, spustelėkite Abu.

  5. Pažymėkite vieną ar kelias lenteles arba užklausas ir spustelėkite Įtraukti. Į langą Ryšiai įtraukę lenteles ir užklausas spustelėkite Uždaryti.

  6. Vilkite lauką (paprastai pirminį raktą) iš vienos lentelės į kitoje lentelėje esantį bendrąjį lauką (išorinį raktą). Norėdami vilkti kelis laukus, paspauskite klavišą CTRL, spustelėkite kiekvieną lauką ir juos vilkite.

    Bus atidarytas dialogo langas Ryšių redagavimas.

  7. Patikrinkite, ar rodomi laukų pavadinimai yra bendrųjų ryšio laukų. Jei lauko pavadinimas netinkamas, spustelėkite lauko pavadinimą ir sąraše pažymėkite naują lauką.

    Norėdami įgalinti šio ryšio nuorodų vientisumą, pažymėkite žymės langelį Įgalinti nuorodų vientisumą. Daugiau informacijos apie nuorodų vientisumą žr. dalyse Supratimas, kas yra nuorodų vientisumas ir Nuorodų vientisumo įgalinimas.

  8. Spustelėkite Kurti.

    Tarp dviejų lentelių nubrėžta ryšio linija. Jei pažymėjote žymės langelį Įgalinti nuorodų vientisumą, linijos galai yra storesni. Be to, tik tada, jei pažymėjote žymės langelį Įgalinti nuorodų vientisumą, viename ryšio linijos gale virš storosios jos dalies bus rodomas skaičius 1, o kitame ryšio linijos gale virš storosios jos dalies bus rodomas begalybės simbolis ().

    Pastabos : 

    • Ryšio „vienas su vienu“ kūrimas   . Abu bendrieji laukai (paprastai pirminio ir išorinio raktų laukai) turi turėti unikalų indeksą. Tai reiškia, kad šių laukų ypatybę Indexed turi būti nustatyta Taip (neleidžiami dublikatai). Jei abu laukai turi unikalų indeksą, Access sukuria ryšį „vienas su vienu“.

    • Ryšio „vienas su daugeliu“ kūrimas   . Ryšiu siejamo elemento „vienas“ pusėje esantis laukas (paprastai pirminis raktas) turi turėti unikalų indeksą. Tai reiškia, kad šio lauko ypatybė Indexed turi būti nustatyta Taip (neleidžiami dublikatai). Elementų „daugelis“ pusėje esantis laukas neturi turėti unikalaus indekso. Laukas pusėje „daugelis“ gali turėti indeksą, bet dublikatai turi būti leidžiami. Tai reiškia, kad šio lauko ypatybė Indexed turi būti nustatyta Ne arba Taip (leidžiami dublikatai). Jei vienas laukas turi unikalų indeksą, o kitas ne, Access sukuria ryšį „vienas su daugeliu“.

Lentelių ryšio kūrimas naudojant sritį Laukų sąrašas

Į esamą lentelę, atidarytą duomenų lapo rodinyje, galite įtraukti lauką vilkdami jį iš srities Laukų sąrašas. Srityje Laukų sąrašas rodomi galimi naudoti susijusiose ir kitose lentelėse esantys laukai. Kai laukas velkamas iš kitos (nesusijusios) lentelės, o tada užbaigiami peržvalgos vediklio veiksmai, tarp lentelės, esančios srityje Laukų sąrašas, ir tos, į kurią laukas buvo nuvilktas, automatiškai sukuriamas naujas ryšys „vienas su daugeliu“. Pagal numatytuosius nustatymus šis Access sukurtas ryšys nuorodų vientisumo neįgalina. Norint įgalinti nuorodų vientisumą, reikia redaguoti ryšį. Daugiau informacijos žr. dalyje Lentelių ryšio keitimas.

Lentelės atidarymas duomenų lapo rodinyje

  1. Skirtuke Failas spustelėkite Atidaryti.

  2. Dialogo lange Atidaryti pažymėkite ir atidarykite duomenų bazę.

  3. Naršymo srityje dešiniuoju palės mygtuku spustelėkite lentelę, į kurią norite įtraukti lauką ir su kuria norite sukurti ryšį, o tada spustelėkite Atidaryti.

Srities Laukų sąrašas atidarymas

  • Paspauskite klavišų kombinaciją ALT+F8.

    Bus atidaryta sritis Laukų sąrašas.

Srityje Laukų sąrašas rodomos visos duomenų bazei priklausančios lentelės, sugrupuotos pagal kategorijas. Kai lentelę naudojate duomenų lapo rodinyje, laukus Access rodo vienoje iš dviejų srities Laukų sąrašas kategorijų: Galimi susijusių lentelių laukai ir Galimi kitų lentelių laukai. Pirmojoje kategorijoje išvardytos visos lentelės, turinčios ryšį su lentele, kurią tuo metu naudojate. Antrojoje kategorijoje išvardytos visos lentelės, su kuriomis naudojama lentelė ryšio neturi.

Jei srityje Laukų sąrašas spustelėsite šalia lentelės pavadinimo esantį pliuso ženklą (+), bus pateiktas visų toje lentelėje esančių laukų sąrašas. Jei lauką norite įtraukti į naudojamą lentelę, vilkite norimą lauką iš srities Laukų sąrašas į duomenų lapo rodinyje atidarytą lentelę.

Lauko įtraukimas ir ryšio kūrimas srityje Laukų sąrašas

  1. Srities Laukų sąrašas dalyje Galimi kitų lentelių laukai spustelėkite šalia lentelės pavadinimo esantį pliuso ženklą (+), kad būtų parodytas lentelės laukų sąrašas.

  2. Norimą lauką iš srities Laukų sąrašas vilkite į duomenų lapo rodinyje atidarytą lentelę.

  3. Kai parodoma įterpimo linija, įmeskite lentelę į reikiamą vietą.

    Bus paleistas Peržvalgos vediklis.

  4. Vykdydami instrukcijas užbaikite Peržvalgos vediklis atliekamus veiksmus.

    Duomenų lapo rodinyje bus rodomas laukas.

Kai laukas velkamas iš kitos (nesusijusios) lentelės, o tada užbaigiami peržvalgos vediklio veiksmai, tarp lentelės, esančios srityje Laukų sąrašas, ir tos, į kurią laukas buvo nuvilktas, automatiškai sukuriamas naujas ryšys „vienas su daugeliu“. Pagal numatytuosius nustatymus šis Access sukurtas ryšys nuorodų vientisumo neįgalina. Norint įgalinti nuorodų vientisumą, reikia redaguoti ryšį. Daugiau informacijos žr. dalyje Lentelių ryšio keitimas.

Puslapio viršus

Lentelių ryšio naikinimas

Norėdami pašalinti lentelių ryšį, turite panaikinti ryšio liniją lange Ryšiai. Atsargiai perkelkite žymiklį, nukreipdami jį į ryšio liniją, o tada spustelėkite liniją. Pažymėta ryšio linija atrodo storesnė. Pažymėję ryšio liniją paspauskite klavišą DELETE. Nepamirškite, kad pašalindami ryšį, taip pat pašalinate to ryšio nuorodų vientisumo palaikymą, jei jis buvo įgalintas. Taigi, Access automatiškai nebedraus kurti vienišųjų narių įrašus toje ryšio pusėje, kurioje yra elementai „daugelis“.

  1. Skirtuko Duomenų bazės įrankiai grupėje Ryšiai spustelėkite Ryšiai.

    Bus atidarytas langas Ryšiai. Jei ryšių dar neapibrėžėte ir langą Ryšiai atidarote pirmą kartą, bus atidarytas dialogo langas Lentelės rodymas. Kai parodomas dialogo langas, spustelėkite Uždaryti.

  2. Skirtuko Dizainas grupėje Ryšiai spustelėkite Visi ryšiai.

    Rodomos visos lentelės, kuriose yra ryšių – rodomos ryšių eilutės.

  3. Spustelėkite norimo naikinti ryšio liniją. Pažymėta ryšio linija atrodo storesnė.

  4. Paspauskite klavišą DELETE.

    arba

Spustelėkite dešiniuoju pelės mygtuku, tada spustelėkite Naikinti.

  • Access gali pateikti pranešimą Ar tikrai norite visam laikui iš duomenų bazės panaikinti pažymėtą ryšį?. Jei šis patvirtinimo pranešimas pateikiamas, spustelėkite Taip.

Pastaba : Jei kurią nors ryšiu siejamą lentelę naudoja kitas asmuo ar procesas arba ji naudojama atidarytos duomenų bazės objekte (pvz., formoje), ryšio panaikinti negalėsite. Prieš šalindami ryšį turite uždaryti visus atidarytus tas lenteles naudojančius objektus.

Puslapio viršus

Lentelių ryšio keitimas

Lentelių ryšys keičiamas pažymint jį lange Ryšiai ir redaguojant. Atsargiai perkelkite žymiklį, nukreipdami jį į ryšio liniją, o tada spustelėkite liniją. Pažymėta ryšio linija atrodo storesnė. Pažymėję ryšio liniją, dukart ją spustelėkite arba skirtuko Dizainas grupėje Įrankiai spustelėkite Ryšių redagavimas. Bus atidarytas dialogo langas Ryšių redagavimas.

Dialogo lange Ryšių redagavimas atlikite norimus keitimus.

  1. Skirtuko Duomenų bazės įrankiai grupėje Ryšiai spustelėkite Ryšiai.

    Bus atidarytas langas Ryšiai. Jei ryšių dar neapibrėžėte ir langą Ryšiai atidarote pirmą kartą, bus atidarytas dialogo langas Lentelės rodymas. Kai parodomas dialogo langas, spustelėkite Uždaryti.

  2. Skirtuko Dizainas grupėje Ryšiai spustelėkite Visi ryšiai.

    Rodomos visos lentelės, kuriose yra ryšių – rodomos ryšių eilutės.

  3. Spustelėkite norimo keisti ryšio liniją. Pažymėta ryšio linija atrodo storesnė.

  4. Dukart spustelėkite ryšio liniją.

  5. Atlikite keitimus ir spustelėkite Gerai.

    Dialogo lange Ryšių redagavimas leidžiama keisti lentelių ryšį, t. y. galite keisti lenteles arba užklausas abiejose ryšio pusėse arba laukus abiejose ryšio pusėse. Be to, galite nustatyti sujungimo tipą arba įgalinti nuorodų vientisumą ir pasirinkti pakopinio atlikimo parinktį. Daugiau informacijos apie sujungimo tipą ir jo nustatymą žr. skyriuje Sujungimo tipo nustatymas. Daugiau informacijos, kaip įgalinti nuorodų vientisumą ir pasirinkti pakopinio atlikimo parinktį, žr. skyriuje Nuorodų vientisumo įgalinimas.

Jungimo tipo nustatymas

Apibrėžus lentelių ryšį, ryšio duomenys lems užklausų dizainą. Pvz., jei apibrėšite dviejų lentelių ryšį, o tada kursite toms lentelėms skirtą užklausą, atsižvelgdama į apibrėžiant ryšį nurodytus laukus, Access automatiškai pažymės numatytuosius gretinamus laukus. Užklausoje šias pradines numatytąsias reikšmes galite perrašyti, bet ryšio teikiamos reikšmės dažnai yra tos, kurias reikia naudoti. Naudojant visas, išskyrus pačias paprasčiausias, duomenų bazes dažnai teks gretinti ir jungti daugiau nei vienos lentelės duomenis, todėl sukūrus ryšius, pagal kuriuos bus nustatomos numatytosios reikšmės, pavyks sutaupyti laiko ir gauti naudos.

Kelių lentelių užklausoje gretinant bendrųjų laukų reikšmes jungiama daugiau nei vienoje lentelėje pateikta informacija. Gretinimo ir jungimo operacija vadinama sujungimu. Pvz., jei norite, kad būtų rodomi kliento užsakymai, turite sukurti užklausą, kurioje sujungiamos lentelės Klientai ir Užsakymai pagal lauką Kliento ID. Užklausos rezultatuose pateikiama kliento ir užsakymo informacija, pateikta tik tose eilutėse, kuriose buvo rastas atitinkamas atitikmuo.

Viena iš reikšmių, kurią galite nurodyti apibrėždami ryšį yra sujungimo tipas. Sujungimo tipas nurodo Access, kuriuos įrašus reikia įtraukti į užklausos rezultatą. Dar kartą panagrinėkite pavyzdį, kai naudojama užklausa, kurioje sujungiamos lentelės Klientai ir Užsakymai pagal bendruosius laukus, kuriuose nurodytas kliento ID. Naudojant numatytąjį sujungimo tipą (vadinamą vidiniu sujungimu), užklausoje bus pateiktos tik tos lentelių Klientai ir Užsakymai eilutės, kurių bendruosiuose laukuose (dar vadinamuose sujungtaisiais laukais) bus nurodytos vienodos reikšmės.

Tačiau jei norite, kad būtų įtraukti visi klientai – net tie, kurie nėra pateikę nė vieno užsakymo, – vidinio sujungimo tipą turite pakeisti vadinamuoju kairiuoju išoriniu sujungimu. Nurodžius kairiojo išorinio sujungimo tipą, bus pateiktos visos kairėje ryšio pusėje esančios lentelės eilutės ir tik atitinančios dešinėje pusėje esančios lentelės eilutės. Nurodžius dešinįjį išorinį sujungimą, bus pateiktos visos dešiniosios lentelės eilutės ir tik atitinkančios kairiosios.

Pastaba : Šiuo atveju, „kairė“ ir „dešinė“ nurodo lentelių vietą dialogo lange Ryšių redagavimas, o ne lange Ryšiai.

Turite numatyti rezultatus, kuriuos dažniausiai norėsite gauti naudodami užklausą, kurioje sujungiamos šiuo ryšiu siejamos lentelės, ir nustatyti atitinkamą sujungimo tipą.

Jungimo tipo nustatymas

  1. Dialogo lange Ryšių redagavimas spustelėkite Sujungimo tipas.

    Bus atidarytas dialogo langas Sujungimo ypatybės.

  2. Spustelėkite pasirinkimą, o tada – Gerai.

Šioje lentelėje (naudojant lenteles Klientai ir Užsakymai) nurodyti trys pasirinkimai, pateikti dialogo lange Sujungimo ypatybės, naudojamą sujungimą ir tai, ar į užklausą įtraukiamos visos, ar tik atitinkančios kiekvienos lentelės eilutės.

Pasirinkimas

Sąryšinis sujungimas

Kairioji lentelė

Dešinioji lentelė

1. Įtraukti tik tas eilutes, kurių sujungti laukai abiejose lentelėse yra vienodi.

Vidinis sujungimas

Sutampančios eilutės

Sutampančios eilutės

2. Įtraukti VISUS lentelės Klientai įrašus ir tik tuos lentelės Užsakymai įrašus, kurių sujungti laukai yra vienodi.

Kairysis išorinis sujungimas

Visos eilutės

Sutampančios eilutės

3. Įtraukti VISUS lentelės Užsakymai įrašus ir tik tuos lentelės Klientai įrašus, kurių sujungti laukai yra vienodi.

Dešinysis išorinis sujungimas

Sutampančios eilutės

Visos eilutės

Jei pasirinksite 2 arba 3 parinktį, ant ryšio linijos bus rodoma rodyklė. Ši rodyklė nukreipta į tą ryšio pusę, kurioje rodomos tik atitinkančios eilutės.

Keitimų atlikimas dialogo lange Sujungimo ypatybės

  1. Skirtuko Duomenų bazės įrankiai grupėje Ryšiai spustelėkite Ryšiai.

    Bus atidarytas langas Ryšiai. Jei ryšių dar neapibrėžėte ir langą Ryšiai atidarote pirmą kartą, bus atidarytas dialogo langas Lentelės rodymas. Kai parodomas dialogo langas, spustelėkite Uždaryti.

  2. Skirtuko Dizainas grupėje Ryšiai spustelėkite Visi ryšiai.

    Bus rodomos visos ryšius turinčios lentelės ir jų ryšių linijos.

  3. Spustelėkite norimo keisti ryšio liniją. Pažymėta ryšio linija atrodo storesnė.

  4. Dukart spustelėkite ryšio liniją.

    Bus atidarytas dialogo langas Ryšių redagavimas.

  5. Spustelėkite Sujungimo tipas.

  6. Dialogo lange Sujungimo ypatybės spustelėkite parinktį, o tada – Gerai.

  7. Atlikite visus papildomus ryšio keitimus ir spustelėkite Gerai.

Puslapio viršus

Nuorodų vientisumo įgalinimas

Nuorodų vientisumas neleidžia kurti vienišųjų narių įrašų ir užtikrina nuorodų sinchronizaciją, kad nebūtų įtraukta įrašų, nurodančių kitus įrašus, kurių jau nebėra. Nuorodų vientisumas įgalinamas kuriant lentelių ryšį. Jį įgalinus, Access atmes visas operacijas, galinčias pažeisti tuo lentelių ryšiu pagrįstą nuorodų vientisumą. Access atmes naujinimo veiksmus, galinčius pakeisti tikslinę nuorodą, ir naikinimo veiksmus, galinčius pašalinti tikslinę nuorodą. Informacijos, kaip nustatyti, kad Access naujinant ir naikinant nuorodas būtų atitinkamai keičiamos visos susijusios eilutės, žr. dalyje Pakopinio atlikimo parinkčių nustatymas.

Nuorodų vientisumo įjungimas arba išjungimas

  1. Lange Ryšiai spustelėkite norimo keisti ryšio liniją. Pažymėta ryšio linija atrodo storesnė.

  2. Dukart spustelėkite ryšio liniją.

Bus atidarytas dialogo langas Ryšių redagavimas.

  1. Pažymėkite žymės langelį Įgalinti nuorodų vientisumą.

  2. Atlikite visus papildomus ryšio keitimus ir spustelėkite Gerai.

Įgalinus nuorodų vientisumą, bus taikomos toliau išvardytos taisyklės.

  • Negalite įvesti reikšmės į susijusios lentelės išorinio rakto lauką, jei tos reikšmė nėra pirminės lentelės pirminio rakto lauke (taip būtų sukurtas vienišojo nario įrašas).

  • Negalite naikinti įrašo pirminėje lentelėje, jei susijusioje lentelėje yra jį atitinkančių įrašų. Pvz., negalite naikinti darbuotojo įrašo lentelėje Darbuotojai, jei lentelėje Užsakymai yra tam darbuotojui priskirtų užsakymų. Pažymėję žymės langelį Susijusius įrašus naikinti pakopomis galėsite vykdydami vieną operaciją panaikinti pirminį įrašą ir visus su juo susijusius įrašus.

  • Negalite keisti pirminio rakto reikšmės pirminėje lentelėje, jei dėl to bus sukurta vienišųjų narių įrašų. Pvz., negalite pakeisti užsakymo numerio lentelėje Užsakymai, jei lentelėje Užsakymo išsami informacija yra tam užsakymui priskirtų eilutės elementų. Pažymėję žymės langelį Susijusius laukus naujinti pakopomis galėsite vykdydami vieną operaciją naujinti pirminį įrašą ir visus susijusius įrašus.

    Pastabos : Jei bandant įgalinti nuorodų vientisumą kyla problemų, atminkite, kad sėkmingam nuorodų vientisumo įgalinimui būtinos šios sąlygos:

    • Bendrasis pirminės lentelės laukas turi būti pirminis raktas arba turėti unikalų indeksą.

    • Bendruosiuose laukuose turi būti to paties tipo duomenys. Vienintelė išimtis yra galimybė sukurti ryšį tarp automatinio numeravimo ir numerio laukų, jei pastarojo ypatybė Lauko dydis (FieldSize) nustatyta kaip Ilgasis sveikasis skaičius.

    • Abi lentelės turi būti toje pačioje Access duomenų bazėje. Nuorodų vientisumo negalima įgalinti susietose lentelėse. Tačiau jei šaltinio lentelės yra Access formato, galite atidaryti duomenų bazę, kurioje jos saugomos, ir įgalinti nuorodų vientisumą toje duomenų bazėje.

Pakopinio atlikimo parinkčių nustatymas

Gali būti, kad iš tikrųjų reikės pakeisti reikšmę toje ryšio pusėje, kurioje yra elementas „vienas“. Tokiu atveju reikia, kad atlikdama tą pačią operaciją Access automatiškai atnaujintų visas eilutes, kurioms gali būti padaryta įtakos. Taip bus atliktas visiškas naujinimas, kad duomenų bazė nelinktų negalutinės būsenos, kai kai kurios eilutės atnaujintos, o kai kurios ne. Šios problemos pavyks išvengti, nes Access palaiko parinktį Susijusius laukus naujinti pakopomis. Jei pirminį raktą naujinsite įgalinę nuorodų vientisumą ir pasirinkę parinktį Susijusius laukus naujinti pakopomis, Access automatiškai atnaujins visus pirminį raktą nurodančius laukus.

Taip pat gali tekti panaikinti eilutę ir visus susijusius įrašus, pvz., siuntėjo įrašą ir visus su juo susijusius užsakymus. Todėl Access palaiko parinktį Susijusius įrašus naikinti pakopomis. Jei įrašą, kuriame yra pirminis raktas, naikinsite įgalinę nuorodų vientisumą ir pasirinkę parinktį Susijusius įrašus naikinti pakopomis, Access automatiškai panaikins visus pirminį raktą nurodančius įrašus.

Naujinimo ir (arba) naikinimo pakopomis įjungimas arba išjungimas

  1. Lange Ryšiai spustelėkite norimo keisti ryšio liniją. Pažymėta ryšio linija atrodo storesnė.

  2. Dukart spustelėkite ryšio liniją.

Bus atidarytas dialogo langas Ryšių redagavimas.

  1. Pažymėkite žymės langelį Įgalinti nuorodų vientisumą.

  2. Pažymėkite žymės langelį Susijusius laukus naujinti pakopomis, Susijusius įrašus naikinti pakopomis arba abu.

  3. Atlikite visus papildomus ryšio keitimus ir spustelėkite Gerai.

Pastaba : Jei pirminis raktas yra automatinio numeravimo laukas, žymės langelio Susijusius laukus naujinti pakopomis žymėti neverta, nes automatinio numeravimo lauko reikšmės keisti negalima.

Puslapio viršus

Pastaba : Mašininio vertimo atsakomybės atsisakymas: Šis straipsnis išverstas naudojant kompiuterinę sistemą be žmogaus įsikišimo. „Microsoft“ pateikia šiuos mašininius vertimus norėdama padėti anglų kalbos nesuprantantiems vartotojams perskaityti turinį apie „Microsoft“ produktus, paslaugas ir technologijas. Šis straipsnis išverstas mašininio vertimo būdu, todėl jame gali būti žodyno, sintaksės ar gramatikos klaidų.

Tobulinkite savo įgūdžius
Ieškoti mokymo
Pirmiausia gaukite naujų funkcijų
Prisijunkite prie „Office Insider“ dalyvių

Ar ši informacija buvo naudinga?

Dėkojame už jūsų atsiliepimus!

Dėkojame už jūsų atsiliepimą! Panašu, kad gali būti naudinga jus sujungti su vienu iš mūsų „Office“ palaikymo agentų.

×