Mysql
 sql >> база данни >  >> RDS >> Mysql

Защо първичният ключ не може да съдържа нулеви стойности?

Колона PRIMARY KEY е еквивалентна на UNIQUE и NOT NULL и е индексирана колона по подразбиране.
Трябва да е УНИКАЛНА, защото първичният ключ идентифицира редове в таблица, така че 2 различни реда не трябва да имат един и същ ключ.
Освен това първичният ключ може да се използва ВЪНШЕН КЛЮЧ в други таблици и ето защо той не може да бъде NULL, така че другата таблица да може да завършва редовете в посочената таблица.

Например:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Достатъчен ли е Markdown (с strip_tags) за спиране на XSS атаки?

  2. MySQL съхранени процедури или php код?

  3. Свързването с отдалечен my Sql ми показва отказан достъп за потребител [имейл защитен] (Използване на парола:Да)

  4. Дизайн на база данни за приложения, използващи хештагове

  5. MySQL foreach алтернатива за процедура