Tabeli primaarvõtme lisamine või muutmine Accessis

Rakenduskoht
Microsoft 365 rakendus Access Access 2024 Access 2021 Access 2019 Access 2016

Primaarvõti on väli või väljade kogum, mille väärtused on kogu tabelis kordumatud. Võtmeväärtusi kasutades saate viidata tervetele kirjetele, kuna igal kirjel on võtme jaoks erinev väärtus. Igal tabelil saab olla ainult üks primaarvõti. Access saab tabeli loomisel automaatselt luua primaarvõtme välja või määrata primaarvõtmena kasutatavad väljad. Selles artiklis selgitatakse, kuidas ja miks primaarvõtmeid kasutada.

Tabeli primaarvõtme seadmiseks avage tabel kujundusvaates. Valige väli (või väljad), mida soovite kasutada, ja seejärel valige lindil Primaarvõti.

Selle artikli teemad

Accessi primaarvõtmete ülevaade

Access kasutab primaarvõtme välju selleks, et mitmes tabelis asuvad andmed kiiresti omavahel seostada ja mõtestatud viisil kombineerida. Primaarvõtme välju saate kasutada teistes tabelites, et viidata primaarvõtme allikaks olevale tabelile. Teistes tabelites kutsutakse neid välju võõrvõtmeteks. Näiteks tabeli Tellijad väli Tellija ID võib olla kasutusel ka tabelis Tellimused. Tabelis Tellijad on see primaarvõti. Tabelis Tellimused nimetatakse seda võõrvõtmeks. Võõrvõti on muu tabeli primaarvõti. Lisateavet leiate teemast Andmebaasikujunduse alused.

Primary key and foreign key shown between two Access datasheets

1. Primaarvõti

2. 2. Välisvõti

Kui teisaldate olemasolevad andmed andmebaasi, võib teil juba olla primaarvõtmena kasutatav väli. Sageli on tabeli primaarvõtmeks kordumatu identifitseerimisnumber, näiteks ID-number, seerianumber või kood. Näiteks võib teil olla klientide tabel, kus igal kliendil on kordumatu kliendi-ID. Primaarvõtmeks on Kliendi-ID väli.

Access loob primaarvõtmele automaatselt indeksi, mis aitab kiirendada päringuid ja muid toiminguid. Samuti tagab Access, et igal kirjel oleks primaarvõtmeväljal väärtus ja et see oleks alati unikaalne.

Kui loote andmelehevaates uue tabeli, loob Access selle jaoks automaatselt primaarvõtme ning määrab sellele väljanime „ID“ ja andmetüübi Automaatnumber.

Milline on hea primaarvõti?

Primaarvõtmeks sobival väljal võiksid olla järgmised omadused.

  • See tuvastab iga rea kordumatult.
  • See pole kunagi tühi ega nullväärtusega – see sisaldab alati väärtust.
  • Väärtused, mida see sisaldab harva (ideaaljuhul mitte kunagi), muutuvad.

Kui te ei leia head võtit, looge võtmena kasutamiseks väli Automaatnumber. Väli Automaatnumber genereerib iga kirje esmakordsel salvestamisel enda jaoks automaatselt väärtuse. Seega vastab väli Automaatnumber kõigile kolmele hea primaarvõtme omadusele. Automaatnumbri välja lisamise kohta leiate lisateavet teemast Automaatnumbri välja lisamine primaarvõtmena.

AutoNumber primary key labeled as ID in Access table Design view

Väli Automaatnumber on hea primaarvõti.

Näited halbade primaarvõtmete kohta

Iga väli, millel puuduvad primaarvõtmeks sobiva välja omadused on primaarvõtmeks halb valik. Siin on mõned näited väljadest, mis oleks tabeli Kontaktid jaoks halvad primaarvõtmed, koos selgitustega, miks need väljad primaarvõtmeks ei sobi.

Halb primaarvõti Põhjus
Isiku nimi Ei pruugi olla tingimata kordumatu ja võib muutuda.
Telefoninumber Võib tõenäoliselt muutuda.
Meiliaadress Võib tõenäoliselt muutuda.
Sihtnumber Mitmel inimesel võib olla ühine sihtnumber.
Faktide ja numbrite kombinatsioonid Faktiosa võib muutuda, mis muudab nende haldamise keerukaks. Võivad põhjustada segadust, kui osa sisust kordub eraldi väljal. Näiteks linna nime ja järjekorranumbri ühendamine (nt TALLINN0579) on halb valik, kuna linn on talletatud eraldi väljana.
Isikukoodid
  • Kuulub isikuandmete hulka ja pole valitsusasutustes ja mõnes ettevõttes lubatud.
  • Mõnel inimesel pole SSN-i
  • Inimesel võib neid elu jooksul olla mitu.

Koondvõtmed: mitme välja kombinatsiooni kasutamine primaarvõtmena

Mõnel juhul soovite primaarvõtmena kasutada tabelis kahte või enamat välja. Näiteks tabel Tellimuse üksikasjad, milles on read tellimuse ühikute jaoks, kasutaks primaarvõtmes kahte välja: Tellimuse ID ja Toote ID. Rohkem kui ühest väljast koosnevat võtit nimetatakse koondvõtmeks.

Accessi primaarvõtme seadmine olemasolevate väljade abil

Hästi töötava primaarvõtme väli peab iga rea kordumatult tuvastama, ei tohi sisaldada ühtegi tühi- ega nullväärtust ja võib harva muutuda (ideaalsel juhul ei muutu kunagi). Primaarvõtme seadmiseks tehke järgmist.

  1. Avage andmebaas, mida soovite muuta.

  2. Paremklõpsake navigeerimispaanil tabelit, milles soovite primaarvõtme määrata, ja valige kiirmenüüst Kujundusvaade.

    Näpunäide.

    Kui navigeerimispaani ei ole näha, vajutage selle kuvamiseks klahvi F11.

  3. Valige väli või väljad, mida soovite primaarvõtmena kasutada.
    Ühe välja valimiseks valige soovitud välja reaselektor.
    Liitvõtme loomiseks mitme välja valimiseks hoidke all juhtklahvi (CTRL) ja valige seejärel iga välja reaselektor.

  4. Valige menüü Tabelikujundus jaotises Tööriistad nupp Primaarvõti.
    Menüü Kujundus jaotis Tööriistad
    Primaarvõtmena määratletud välja või väljade kõrvale vasakule lisatakse võtme indikaator.

Primaarvõtme eemaldamine Accessis

Kui eemaldate primaarvõtme, pole varem primaarvõtmeks olnud väli või väljad enam kirje tuvastamise peamised vahendid.

Primaarvõtme eemaldamisel ei kustutata välju tabelist, vaid eemaldatakse primaarvõtme jaoks loodud indeks.

  1. Enne primaarvõtme eemaldamist peate veenduma, et see ei kuuluks mõnda tabeliseosesse. Kui üritate eemaldada primaarvõtit, mis kuulub ühte või mitmesse seosesse, teatab Access, et esmalt peate kustutama seose.

    Tabeliseose kustutamiseks tehke järgmist.

    1. Kui seosesse kuuluvad tabelid on avatud, sulgege need. Avatud tabelite vahelist seost ei saa kustutada.
    2. Klõpsake menüü Andmebaasiriistad jaotises Seosed nuppu Seosed.
      Accessi menüülindi pilt
    3. Valige Add Tables (Lisa tabelid).
    4. Valige kustutatava tabeliseose jaoks tabeliseosejoon (valimisel muutub joon paksuks) ja vajutage kustutusklahvi (DELETE).
    5. Klõpsake menüü Seoste kujundus jaotises Seosed nuppu Sule.
  2. Pärast seoste kustutamist paremklõpsake navigeerimispaanil tabelit, kust soovite primaarvõtme eemaldada, ja seejärel valige Kujundusvaade.

    Näpunäide.

    Kui navigeerimispaani ei ole näha, vajutage selle kuvamiseks klahvi F11.

  3. Praeguse primaarvõtme reaselektori valimine
    Kui primaarvõti koosneb ühest väljast, valige selle välja reaselektor.
    Kui primaarvõti koosneb mitmest väljast, valige primaarvõtme mis tahes välja reaselektor.

  4. Valige menüü Tabelikujundus jaotises Tööriistad nupp Primaarvõti.
    Varem primaarvõtmeks määratud väljalt või väljadelt eemaldatakse võtme indikaator.

Märkus.

Kui salvestate uue tabeli primaarvõtit seadmata, pakub Access primaarvõtme loomise võimalust. Kui klõpsate nuppu Jah, luuakse ID-väli, mis kasutab iga kirje jaoks kordumatu väärtuse loomiseks andmetüüpi Automaatnumber. Kui tabelis on juba automaatnumbriväli, kasutab Access seda välja primaarvõtmena.

Primaarvõtme muutmine Accessis

Kui otsustate tabeli primaarvõtit muuta, saate seda teha, läbides järgmised etapid.

  1. Eemaldage olemasolev primaarvõti jaotise Primaarvõtme eemaldamine juhiste abil.
  2. Seadke primaarvõti jaotise Primaarvõtme seadmine juhiste abil.

Lisateave

Andmebaasidisaini ja asjakohase primaarvõtme valimise kohta leiate teavet järgmistest artiklitest:

Lehe algusesse