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

MySQL:УНИКАЛНО, но ПО ПОДРАЗБИРАНЕ NULL - разрешено чрез създаване на таблица. Разрешено е да се вмъкне повече от 1 NULL. Защо?

Според спецификацията на SQL 92 (и как я четете) уникалните ограничения са предназначени да обозначават кандидат ключове и следователно не трябва да допускат дублиращи се стойности нито NULL стойности. DB2 прилага техните уникални ограничения по този начин. Повече от няколко доставчици на бази данни (включително MySQL) четат спецификацията като игнориране на NULL стойности, подобно на клаузата Group By игнорира стойности NULL и по този начин те прилагат уникални ограничения, така че да се прилага само за стойности, различни от NULL. Други обаче третират NULL като собствена специална стойност и позволяват само един запис, който е NULL. Microsoft SQL Server прилага уникални ограничения по този начин. Единственият аспект, който е последователен сред всички доставчици по отношение на уникалните ограничения, е, че стойностите, различни от NULL, трябва да бъдат уникални.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysql - Последните 30 дни

  2. конвертиране на низ в дата php

  3. Разграничители в MySQL

  4. BIT(1) или TINYINT за флагове в MySQL

  5. MySQL въпрос - Как да се справя с множество типове потребители - една таблица или няколко?