Lentelės pirminio rakto kūrimas arba keitimas „Access“

Taikoma
„Access“, skirta „Microsoft 365“ „Access 2024“ Access 2021 Access 2019 Access 2016

Pirminis raktas yra laukas arba laukų rinkinys, kuriame pateikiamos unikalios visoje lentelėje vertės. Naudodami rakto reikšmes galite nurodyti visus įrašus, nes kiekvienas įrašas turi skirtingą rakto vertę. Kiekvienoje lentelėje gali būti tik vienas pirminis raktas. "Access " gali automatiškai sukurti pirminio rakto lauką, kai sukuriate lentelę, arba galite nurodyti laukus, kuriuos norite naudoti kaip pirminį raktą. Šiame straipsnyje aiškinama, kaip ir kodėl naudojami pirminiai raktai.

Norėdami nustatyti pirminį lentelės raktą, atidarykite lentelės rodinį Dizainas. Pažymėkite norimą naudoti lauką (arba laukus), tada juostelėje pasirinkite Pirminis raktas.

Šiame straipsnyje

Pirminių raktų programoje „Access“ apžvalga

"Access" naudoja pirminių raktų laukus, kad greitai susietų duomenis iš kelių lentelių ir juos prasmingai sujungtų. Pirminio rakto laukus galite įtraukti į kitas lenteles, kad nurodytumėte lentelę, kuri yra pirminio rakto šaltinis. Šiose kitose lentelėse laukai vadinami išoriniais raktais. Pvz., lentelės Klientai laukas Kliento ID taip pat gali būti lentelėje Užsakymai. Lentelėje Klientai jis yra pirminis raktas. Užsakymų lentelėje jis vadinamas išoriniu raktu. Paprastai tariant, išorinis raktas yra kitos lentelės pirminis raktas. Daugiau informacijos žr. Duomenų bazės kūrimo pagrindai.

Pagrindinis raktas ir išorinis raktas rodomi tarp dviejų „Access“ duomenų lapų

1. Pirminis raktas

2. Išorinis raktas:

Jei perkeliate esamus duomenis į duomenų bazę, galbūt jau turite lauką, kurį galite naudoti kaip pirminį raktą. Dažnai unikalus identifikatorius, pvz., ID numeris arba serijos numeris ar kodas, yra naudojamas kaip lentelės pirminis raktas. Pavyzdžiui, turite lentelę Klientai, kurioje kiekvienas klientas turi unikalų kliento ID numerį. Kliento ID laukas yra pirminis raktas.

„Access“ automatiškai sukuria pirminio rakto rodyklę, taip paspartinant užklausas ir kitas operacijas. „Access“ taip pat užtikrina, kad kiekvienas įrašas pirminio rakto lauke turėtų reikšmę ir, kad ji visada būtų unikali.

Kai sukuriate naują lentelę duomenų lapo rodinyje, programa „Access“ automatiškai sukuria pirminį raktą ir priskiria jam ID lauko pavadinimą ir duomenų tipą „AutoNumber“.

Kaip sukurti gerą pirminį raktą?

Geras pirminis raktas pasižymi keliomis savybėmis:

  • Jis unikaliai identifikuoja kiekvieną eilutę.
  • Jis niekada nebūna tuščias ar neapibrėžtas – jame visada yra reikšmė.
  • Jame esanti vertė retai (idealiu atveju – niekada) keičiasi.

Jei nežinote, ar raktas geras, sukurkite "AutoNumber" lauką, kurį naudosite kaip raktą. „AutoNumber“ automatiškai sugeneruoja savo reikšmę, kai pirmą kartą įrašomas įrašas. Taigi „AutoNumber“ laukas atitinka visas tris gero pirminio rakto charakteristikas. Daugiau informacijos apie automatinio numeravimo lauko įtraukimą žr. Lauko "AutoNumber" įtraukimas kaip pirminio rakto.

Automatinio numeravimo pirminis raktas, pažymėtas kaip ID „Access“ lentelės dizaino rodinyje

„AutoNumber“ laukas būna geras pirminis raktas.

Blogų pirminių raktų pavyzdžiai

Bet koks laukas, kuriame nėra vienos ar kelių gero rakto savybių, yra blogas pirminio rakto pasirinkimas. Štai keli laukų pavyzdžiai, kurie būtų prasti pirminiai lentelės Kontaktai raktai, ir priežastys, dėl kurių jie netinka.

Prastas pirminio rakto Priežastis
Asmens vardas Gali nebūti patikimai unikalus, be to, gali keistis
Telefono numeris Gali keistis.
El. pašto adresas Gali keistis.
Pašto indeksas Daugiau nei vienas asmuo gali naudoti tą patį pašto kodą
Faktų ir skaičių derinys Faktų dalis gali keistis, todėl iškiltų priežiūros problemų. Jie gali sukelti sumaištį, jei faktų dalis kartojama kaip atskiras laukas. Pavyzdžiui, derinys, apimantis miestą ir numerį (pvz., VILNIUS0579), yra blogas pasirinkimas, jei miestas taip pat yra išsaugotas kaip laukas.
Socialinio draudimo numeriai
  • Asmeninė informacija neleidžiama vyriausybės institucijose ir kai kuriose organizacijose.
  • Kai kurie žmonės neturi socialinio draudimo numerio
  • Per gyvenimą asmuo gali turėti daugiau nei vieną socialinio draudimo numerį

Raktų kūrimas: kelių laukų naudojimas kaip pirminio rakto

Kai kuriais atvejais kaip pirminį raktą galite naudoti vieną arba daugiau lentelės laukų. Pavyzdžiui, lentelėje Užsakymų išsami informacija, kurioje saugomi užsakymų eilučių elementai, pirminis raktas gali būti sudarytas iš dviejų laukų: Užsakymo ID ir Produkto ID. Raktas, kuris sudaromas iš daugiau nei vieno lauko, vadinamas sudėtiniu raktu.

Pirminio rakto nustatymas naudojant „Access“ turimus laukus

Kad pirminis raktas gerai veiktų, laukas turi unikaliai identifikuoti kiekvieną eilutę, jame niekada negali būti tuščios ar neapibrėžtos (null) reikšmės ir retai kada (geriausia – niekada) keistųsi. Norėdami nustatyti pirminį raktą:

  1. Atidarykite duomenų bazę, kurią norite keisti.

  2. Naršymo srityje dešiniuoju pelės mygtuku spustelėkite lentelę, kurioje norite nustatyti pirminį raktą, tada kontekstiniame meniu pasirinkite Dizaino rodinys.

    Patarimas

    Jei nematote naršymo srities, paspauskite klavišą F11, ir ji atsidarys.

  3. Pažymėkite lauką ar laukus, kuriuos naudosite kaip pirminį raktą.
    Norėdami pažymėti vieną lauką, pasirinkite norimo lauko eilutės parinkiklį.
    Norėdami pažymėti kelis laukus, kad sukurtumėte sudėtinį raktą, laikykite nuspaudę klavišą CTRL ir pasirinkite kiekvieno lauko eilutės parinkiklį.

  4. On the Table Design tab, in the Tools group, select Primary Key.
    Skirtuko Dizainas grupė Įrankiai
    Rakto indikatorius pridedamas lauko ar laukų, kuriuos nurodėte kaip pirminį raktą, kairėje pusėje.

Pirminio rakto šalinimas „Access“

Pašalinus pirminį raktą, laukas ar laukai, kurie anksčiau buvo pirminiai raktai, nebeteiks pirminės įrašų identifikavimo funkcijos.

Pašalinę pirminį raktą, nepanaikinsite lentelės laukų, tačiau pašalinsite pirminiam raktui sukurtą rodyklę.

  1. Prieš šalindami pirminį raktą, turite įsitikinti, kad jis nėra jokių lentelės ryšių dalis. Jei bandysite šalinti pirminį raktą, kuris yra vieno ar kelių ryšių dalis, programa „Access“ perspės jus, kad iš pradžių turite panaikinti ryšį.

    Norėdami panaikinti lentelės ryšius, atlikite šiuos veiksmus:

    1. Jei lentelių ryšyje dalyvaujančios lentelės atidarytos – uždarykite jas. Lentelių ryšio negalėsite panaikinti atidarytose lentelėse.
    2. Skirtuko Duomenų bazės įrankiai grupėje Ryšiai pasirinkite Ryšiai.
      Access juostelės paveikslėlis
    3. Pasirinkite Įtraukti lenteles.
    4. Pažymėkite norimo naikinti lentelės ryšio eilutę (pažymėjus eilutę, ji tampa paryškinta), tada paspauskite klavišą DELETE.
    5. Skirtuko Ryšių dizainas grupėje Ryšiai spustelėkite Uždaryti.
  2. Panaikinę ryšius, naršymo srityje dešiniuoju pelės mygtuku spustelėkite lentelę, iš kurios norite šalinti pirminį raktą, tada pasirinkite Dizaino rodinys.

    Patarimas

    Jei nematote naršymo srities, paspauskite klavišą F11, ir ji atsidarys.

  3. Pasirinkti dabartinio pirminio rakto eilutės parinkiklį.
    Jeigu pirminį raktą sudaro vienas laukas, pasirinkite to lauko eilutės parinkiklį.
    Jeigu pirminis raktas sudarytas iš kelių laukų, pasirinkite bet kurio lauko, esančio pirminiame rakte, eilutės parinkiklį.

  4. On the Table Design tab, in the Tools group, select Primary Key.
    Rakto indikatorius pašalinamas iš lauko arba laukų, kuriuos anksčiau nurodėte kaip pirminį raktą.

Pastaba

Jei naują lentelę įrašote nenustatydami pirminio rakto, programa „Access“ paragina jį sukurti. Pasirinkus Taip, programa „Access“ sukuria ID lauką, kurio duomenų tipas yra „AutoNumber“, kad kiekvienam įrašui būtų suteikta unikali reikšmė. Jei jūsų lentelėje jau yra laukas „AutoNumber“, programa „Access“ naudoja jį kaip pirminį raktą.

Pirminio rakto keitimas „Access“

Jei nuspręstumėte keisti lentelės pirminį raktą, galite tai padaryti atlikdami šiuos veiksmus:

  1. Naudodamiesi skyriuje Pirminio rakto šalinimas pateiktomis instrukcijomis, pašalinkite esamą pirminį raktą.
  2. Naudodamiesi skyriuje Pirminio rakto nustatymas pateiktomis instrukcijomis, nustatykite pirminį raktą.

Papildoma informacija

Daugiau informacijos apie duomenų bazės kūrimą ir atitinkamo pirminio rakto pasirinkimą, žr. straipsnius:

Puslapio viršus