sql >> Databasteknik >  >> RDS >> Mysql

Varför kan primärnyckel inte innehålla nullvärden?

En PRIMARY KEY-kolumn motsvarar UNIQUE och NOT NULL och är indexerad kolumn som standard.
Den ska vara UNIK eftersom en primärnyckel identifierar rader i en tabell så två olika rader ska inte ha samma nyckel.
Dessutom kan en primärnyckel användas som en UTLÄNDLIG KEY i andra tabeller och det är därför den inte kan vara NULL så att den andra tabellen kan hitta raderna i den refererade tabellen.

Till exempel:

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. Hur definierar man JPA Repository Query med en Join?

  2. Optimera frågor baserade på klustrade och icke-klustrade index i SQL?

  3. swi prolog mysql + webb

  4. Hur kan jag välja den senaste inmatningen för varje medlem?