mysql innodb 唯一键里的字段为什么不能为NULL

时间:2023-03-08 18:51:08
mysql  innodb 唯一键里的字段为什么不能为NULL

mysql 唯一键失效

CREATE TABLE `studnet_unique` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) DEFAULT NULL,
`nick` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`,`nick`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1

 insert into studnet_unique(name, nick) values("abc", NULL); 

能够插入多次,已经有了唯一索引,为什么能够写入多次数据呢

查看代码发现,当辅助索引中有字段的内容为NULL时,NULL != NULL

mysql  innodb 唯一键里的字段为什么不能为NULL

mysql  innodb 唯一键里的字段为什么不能为NULL

mysql  innodb 唯一键里的字段为什么不能为NULL