Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
与空值相关的MySQL唯一vs主键_Mysql - Fatal编程技术网

与空值相关的MySQL唯一vs主键

与空值相关的MySQL唯一vs主键,mysql,Mysql,我在建立数据库时注意到了一些事情,我想和你们这些聪明人确认一下 我有一列需要接受NULL值,因此我在易于使用的PHPMyAdmin界面中勾选了NULL复选框。简单 当我添加一个唯一的索引时,一切都很好。但是,当我将唯一索引更改为主键(也是唯一的)时,它会删除NULL选项 这是为什么?这是预期的行为吗?这是预期的。如中所述,主键不能接受NULL: 主键是唯一的索引,其中必须定义所有键列 不为空

我在建立数据库时注意到了一些事情,我想和你们这些聪明人确认一下

我有一列需要接受
NULL
值,因此我在易于使用的PHPMyAdmin界面中勾选了
NULL
复选框。简单

当我添加一个唯一的索引时,一切都很好。但是,当我将唯一索引更改为主键(也是唯一的)时,它会删除NULL选项


这是为什么?这是预期的行为吗?

这是预期的。如中所述,主键不能接受NULL:

主键是唯一的索引,其中必须定义所有键列 不为空