MySQL-ensisijainen avain

Yhteenveto: Tässä opetusohjelmassa opit käyttämään MySQL-ensisijaisen avaimen rajoitusta taulukon ensisijaisen avaimen luomisessa.

Johdanto MySQL-ensisijaiseen avaimeen

Ensisijainen avain on sarake tai sarakeryhmä, joka yksilöi taulukon jokaisen rivin. Ensisijainen avain noudattaa näitä sääntöjä:

  • Ensisijaisen avaimen on sisällettävä ainutlaatuisia arvoja. Jos ensisijainen avain koostuu useista sarakkeista, näiden sarakkeiden arvoyhdistelmän on oltava yksilöllinen.
  • Ensisijaisen avaimen sarakkeessa ei voi olla NULL arvoja. Kaikki yritykset lisätä tai päivittää NULL ensisijaisen avaimen sarakkeisiin johtavat virheeseen. Huomaa, että MySQL lisää implisiittisesti NOT NULL -rajoituksen ensisijaisen avaimen sarakkeisiin.
  • Taulukossa voi olla yksi ainoa ensisijainen avain.

Koska MySQL toimii nopeammin kokonaislukujen kanssa ensisijaisen avaimen sarakkeen tietotyypin tulee olla kokonaisluku, esim. INT, BIGINT. Ja sinun on varmistettava, että ensisijaisen avaimen kokonaislukutyypin arvoalueet ovat riittävät kaikkien taulukkoon mahdollisesti kuuluvien rivien tallentamiseen.

Ensisijaisen avaimen sarakkeessa on usein AUTO_INCREMENT -attribuutti, joka luo automaattisesti peräkkäisen kokonaisluvun, kun lisäät uuden rivin taulukkoon.

Kun määrität taulukon ensisijaisen avaimen, MySQL luo indeksin nimeltä PRIMARY.

MySQL-ENSIMMÄISET AVAINESIMERKIT

PRIMARY KEY -rajoituksen avulla voit määrittää taulukon ensisijaisen avaimen kun luot tai muokkaat taulukkoa.

1) Määritä ENSIMMÄINEN AVAINRAJOITUS CREATE TABLE

Tyypillisesti määrität taulukon ensisijaisen avaimen CREATE TABLE -lauseke.

Jos ensisijaisella avaimella on yksi sarake, voit käyttää PRIMARY KEY -rajoitusta sarakerajoituksena:

Code language: SQL (Structured Query Language) (sql)

Kun ensisijaisella avaimella on enemmän kuin yksi sarake, sinun on käytettävä e PRIMARY KEY rajoitus taulukon rajoituksena.

Tässä syntaksissa erotat sarakkeet column_list pilkuilla ( ,).

PRIMARY KEY -taulukkorajoitusta voidaan käyttää, kun ensisijaisella avaimella on yksi sarake:

Seuraava esimerkki luo taulukon nimeltä users, jonka ensisijainen avain on sarake user_id:

Tämä lause luo roles taulukko, jolla PRIMARY KEY -rajoitus on taulukon rajoitus:

Jos ensisijainen avain koostuu useista sarakkeista, sinun on määritettävä ne lopussa CREATE TABLE -lausekkeen. Laitat pilkuilla erotetun luettelon ensisijaisten avainten sarakkeista sulkeisiin PRIMARY KEY -avainsanojen jälkeen.

Seuraava esimerkki luo user_roles taulukko, jonka ensisijainen avain koostuu kahdesta sarakkeesta: user_id ja role_id. Se määrittelee PRIMARY KEY -rajoituksen taulukon rajoitukseksi:

Huomaa, että käsky loi myös kaksi vieraan avaimen rajoitusta.

2) Määritä ENSISIJAINEN AVAINRAJOITUKSET käyttämällä ALTER TABLE

Jos taulukossa ei jostain syystä ole ensisijaista avainta, voit lisätä ensisijaisen avaimen lausekkeeseen ALTER TABLE taulukko seuraavasti:

Code language: SQL (Structured Query Language) (sql)

Seuraava esimerkki lisää sarakkeen id ensisijaiseen avaimeen.

Luo ensin pkdemos -taulukko ilman ensisijaista avainta.

Code language: SQL (Structured Query Language) (sql)

Lisää sitten ensisijainen avain pkdemos -taulukkoon lausekkeen ALTER TABLE avulla:

Code language: SQL (Structured Query Language) (sql)

Jos lisäät ensisijaisen avaimen taulukkoon, jossa on jo tietoja. Ensisijaiseen avaimeen sisällytettävien sarakkeiden tietojen on oltava yksilöllisiä eikä NULL.

ENSIMMÄINEN AVAIN vs. AINUTLAATUINEN AVAIN vs. AVAIN

KEY on synonyymi INDEX. Käytät KEY -sovellusta, kun haluat luoda hakemiston sarakkeelle tai sarakeryhmälle, joka ei ole ensisijaisen avaimen tai yksilöllisen avaimen osa.

UNIQUE -hakemisto varmistaa, että sarakkeen arvojen on oltava yksilöllisiä. Toisin kuin PRIMARY -hakemisto, MySQL sallii NULL -arvot UNIQUE -hakemistossa. Lisäksi taulukossa voi olla useita UNIQUE -hakemistoja.

Oletetaan, että email ja iv id = ”a8ac12086e users -taulukon käyttäjien ”>

on oltava yksilöllisiä.Näiden sääntöjen pakottamiseksi voit määrittää UNIQUE -hakemistot sarakkeille email ja username seuraava lause:

Lisää UNIQUE -hakemisto sarakkeeseen username:

Code language: SQL (Structured Query Language) (sql)

Lisää UNIQUE -hakemisto sarakkeeseen email:

Code language: SQL (Structured Query Language) (sql)

Tässä opetusohjelmassa olet oppinut luomaan ensisijaisen avaimen uudelle taulukolle tai lisäämään ensisijaisen avaimen olemassa olevaan taulukkoon.

  • Oliko tästä opetusohjelmasta hyötyä?
  • KylläEi

Leave a Reply

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *