Išbandykite!
Sąryšinės duomenų bazės galia slypi duomenų derinyje lentelėse. Norėdami tai padaryti, pirmiausia turite nustatyti ryšius tarp lentelių. Tada nustatykite "Access" dirbti ir sujungkite užklausų, formų ir ataskaitų duomenis.
Norėdami pamatyti visus esamus duomenų bazės ryšius, atidarykite "Access" šabloną, eikite į skirtuką Duomenų bazės įrankiai ir pasirinkite Ryšiai.
Pastaba
Jei atidarote tuščią duomenų bazę arba neapibrėžėte jokių lentelės ryšių, "Access" paragina įtraukti lentelę arba užklausą. Kad galėtumėte įtraukti ryšį, turite turėti mažiausiai dvi lenteles. Geriausia pirmiausia sukurti visas lenteles. Norėdami sužinoti daugiau, žr. Ryšių kūrimas naudojant peržvalgos vedlį ir Ryšių kūrimas naudojant ryšių sritį.
Ryšių rodinio supratimas
Linijos ryšių rodinyje rodo ryšius tarp lentelių. Šiame paveikslėlyje kairėje esanti lentelė yra pirminė lentelė. Dešinėje esanti lentelė yra antrinė lentelė. Linija tarp jų jungia laukus (šiuo atveju Užsakymo ID ir Produkto ID), naudojamus duomenims sutapti.
Linijos ir simboliai nurodo, kaip susiję jūsų lentelės:
- Stora jungiamoji linija reiškia, kad užtikrinate nuorodų duomenų vientisumą. Taip gerai. Jis užtikrina duomenų sinchronizavimą.
- Mūsų iliustracijoje skaičius 1 nurodo, kad toje lentelėje gali būti tik vienas atitinkantis įrašas. Čia pateiktoje lentelėje Užsakymai kiekvieną užsakymą atitinka tik vienas įrašas.
- ∞ simbolis nurodo, kad daugelis įrašų gali turėti tą patį ID. Čia pateiktoje lentelėje Užsakymo išsami informacija užsakymas (nurodomas užsakymo ID) gali būti rodomas daugiau nei vieną kartą, nes tame pačiame užsakyme gali būti keli produktai.
Lentelių ryšių tipai
Tarp lentelių yra trijų tipų ryšiai:
- Vienas su vienu. Kai kiekvienas kiekvienos lentelės elementas rodomas tik vieną kartą. Pvz., kiekvienas darbuotojas gali turėti tik vieną įmonės automobilį. Daugiau informacijos rasite Ryšių "vienas su vienu" kūrimas.
- Vienas su daugeliu. Kai vienas vienos lentelės elementas gali būti susietas su keliais elementais kitoje lentelėje. Pavyzdžiui, kiekviename pirkimo užsakyme gali būti nurodyti keli produktai.
- Daugelis su daugeliu. Kai vienas ar keli vienos lentelės elementai gali būti siejami su vienu ar keliais kitoje lentelėje esančiais elementais. Pavyzdžiui, kiekviename užsakyme gali būti nurodyti keli produktai, o kiekvienas produktas gali būti nurodytas keliuose užsakymuose. Norėdami sužinoti daugiau, žr. ryšių "daugelis su daugeliu" kūrimas.
Ryšiai "vienas su daugeliu"
Vienas iš dažniausiai naudojamų ryšių tarp lentelių gerai sukurtose duomenų bazėse yra ryšys "vienas su daugeliu".
Ryšiai tarp lentelių paprastai priklauso nuo vienos iš lentelių pirminio rakto. Prisiminkite, kad pirminis raktas yra unikalus kiekvieno įrašo identifikatorius (dažnai skaitinis). Norint parodyti, kad informacija dviejose skirtingose lentelėse yra susijusi, paprastai kuriamas ryšys naudojant vienos iš lentelių pirminį raktą.
Pavyzdžiui, čia parodytame ryšyje kiekvienas asmuo kontaktų lentelėje turi ID, kuris yra pirminis raktas (nurodomas šalia jo esančiu rakto simboliu). Šis ID taip pat rodomas lentelės Turtas lauke Savininkas. Norėdami siųsti el. laišką asmeniui, susietam su turtu, gaukite reikšmę iš lauko El. pašto adresas. Norėdami tai padaryti, ieškokite reikšmės turto lentelės lauke Savininkas, tada ieškokite šio ID lentelėje Kontaktai. Skaičius 1 viename jungiamosios linijos gale ir ∞ simbolis kitame gale nurodo, kad tai yra ryšys "vienas su daugeliu", todėl vienas kontaktas gali būti susietas su daug išteklių.
Ryšio redagavimas
Jei modifikuojate esamą duomenų bazę arba jei ją sukūrėte naudodami šabloną, galite redaguoti esamus ryšius pagal savo poreikius.
Pastaba
Jei lentelės, su kuriomis norite dirbti, yra naudojamos, pirmiausia turite jas uždaryti kartu su visais atidarytais objektais, kurie jas naudoja.
Duomenų bazės įrankių>ryšių pasirinkimas.
Pažymėkite liniją, jungiančią dvi susijusias lenteles.
Patarimas
Jei nematote norimo ryšio, skirtuko Dizainas grupėje Ryšiai pasirinkite Visi ryšiai.
Skirtuke Dizainas pasirinkite Redaguoti ryšius.
Lentelė / užklausa yra pirminė lentelė kairėje (šiame pavyzdyje Klientai).
Susijusi lentelė / užklausa yra antrinė lentelė (šiame pavyzdyje Užsakymai).
Net jei lentelių rodinyje Ryšiai nėra rodoma tokia tvarka, jų išdėstymas dialogo lange rodo jas ir ryšį jungiančios linijos kryptį. Tai svarbu, jei, pavyzdžiui, ryšys yra "vienas su daugeliu", nes jis nurodo, kad kairėje esanti lentelė yra vienas (pirminė lentelė), o lentelė dešinėje yra daugelis (antrinė lentelė).Norėdami pakeisti laukus, jungiančius šias lenteles, pasirinkite kitą lauką po kiekviena rodoma lentele. Šiame pavyzdyje lentelės Klientai laukas ID sujungia su lentelės Užsakymai lauku Kliento ID.
Pakeiskite būdą, kaip "Access" sinchronizuoja lenteles pateiktus duomenis.
Nuorodų vientisumo įgalinimas Norėdami išvengti neleistinų duomenų ir sinchronizuoti nuorodas visuose lentelių ryšiuose, pasirinkite šią parinktį.
Tarkime, kad tarp lentelių Darbuotojai ir Išmokos darbuotojams yra ryšys "vienas su vienu". Jei darbuotojas išeina iš įmonės ir jūs jį pašalinate iš lentelės Darbuotojai, susijusio darbuotojo įrašas lentelėje Išmokos darbuotojams taip pat pašalinamas.
Kartais nuorodų vientisumo naudojimas yra neprasmingas. Pvz., tarkime, tarp lentelių Siuntėjai ir Užsakymai yra ryšys "vienas su daugeliu". Panaikinate siuntėją ir tas siuntėjas susieja su lentelėje Užsakymai esančiais užsakymais. Šie užsakymai tampa vienišaisiais nariais, t. y. juose vis dar yra siuntėjo ID, bet ID nebegalioja, nes nebėra jo nurodomo įrašo.Susijusius laukus naujinti pakopomis Norėdami įsitikinti, kad susijusių laukų duomenys bus atnaujinti visose susijusiose lentelėse, pasirinkite šią parinktį.
Tarkime, jūs tiesiog norite pakeisti siuntėjo ID. Nustačius šią parinktį užtikrinama, kad siuntėjo ID bus atnaujintas ne tik lentelėje Siuntėjas, bet ir visose kitose prie jos prijungtose lentelėse, kuriose taip pat yra siuntėjo ID, pvz., lentelėje Užsakymai.Susijusius įrašus naikinti pakopomis Pasirinkimas priklausys nuo to, ar norite išsaugoti kai kurių lentelių įrašus, net jei jie gali būti panaikinti iš kitų lentelių.
Tarkime, kad panaikinote siuntėją. Pasirinkus šią parinktį, programa Access panaikina visus įrašus visose lentelėse, kuriose nurodytas tas siuntėjo ID, įskaitant visus užsakymus (lentelėje Užsakymai), kuriuos išsiuntė tas siuntėjas. Šią parinktį galite pasirinkti tik tuo atveju, jei esate tikri, kad norite panaikinti savo užsakymų istoriją.Norėdami pakeisti lentelių ryšį iš vidinės jungties į išorinę, pasirinkite sujungimo tipą . Daugiau informacijos rasite Užklausų su išorinėmis jungtimis kūrimas.
Lentelių ryšio naikinimas
Pastaba
Jei lentelės, su kuriomis norite dirbti, yra naudojamos, pirmiausia turite jas uždaryti kartu su visais atidarytais objektais, kurie jas naudoja.
Norėdami pašalinti lentelių ryšius:
Duomenų bazės įrankių>ryšių pasirinkimas.
Pažymėkite liniją, jungiančią dvi susijusias lenteles.
Patarimas
Jei nematote norimo ryšio, skirtuko Dizainas grupėje Ryšiai pasirinkite Visi ryšiai.
Pasirinkite klavišą "Delete". Jei būsite paraginti patvirtinti, kad norite panaikinti ryšį, pasirinkite Taip.
Pastaba
Šalinant ryšį taip pat šalinamas to ryšio nuorodų vientisumo palaikymas, jei toks yra. Todėl "Access" nebeapsaugos nuo keitimų, dėl kurių atsiranda vienišųjų narių įrašai ryšio "vienas su daugeliu" pusėje.