sql >> Database teknologi >  >> RDS >> Mysql

Hvorfor kan primærnøgle ikke indeholde null-værdier?

En PRIMÆR NØGLE-kolonne svarer til UNIK og IKKE NULL og er som standard indekseret kolonne.
Den skal være UNIK, fordi en primærnøgle identificerer rækker i en tabel, så 2 forskellige rækker bør ikke have den samme nøgle.
Derudover kan en primær nøgle bruges en UDENLANDSKE NØGLE i andre tabeller, og det er derfor, den ikke kan være NULL, så den anden tabel kan finde rækkerne i den refererede tabel.

For eksempel:

CREATE person{   
   id INT PRIMARY KEY,  -- equals UNIQUE NOT NULL   
   name VARCHAR(20)   
};   

CREATE family{   
   id INT PRIMARY KEY,  -- equals UNIQUE NOT NULL   
   menber_id INT FOREIGN KEY REFERENCE person(id)   
};   


  1. Hvordan kan jeg aktivere MySQLi-udvidelsen i PHP 7?

  2. MySQL:Forespørgsel efter liste over tilgængelige muligheder for SET

  3. PostgreSQL - max antal parametre i IN-klausul?

  4. Henter SQLEXCEPTION-meddelelse i procedurer MySQL 5.5.x