为了账号安全,请及时绑定邮箱和手机立即绑定

unique key插入两个空值问题

unique key插入了两个空值,全部插入成功,查找记录时也发现两个空值都存在,这不是与其保证记录唯一性的作用相矛盾吗?

正在回答

5 回答

UNIQUE KEY 是可以设置为NULL的,当这个字段存在多条记录为NULL的情况下,这些NULL值不被记录在索引上,所以插入全NULL值时,可以有重复的,而其他的则不能插入重复值。~ 

我们还没学到索引,对于存储和索引机制不清楚,所以比较难以理解为什么多条NULL的也叫唯一~ 

1 回复 有任何疑惑可以回复我~
#1

qq_kop_0

我理解的是 因为都是空 所以还是唯一的一个空 因为大家都一样
2017-04-30 回复 有任何疑惑可以回复我~

不放进索引放在哪里,仅仅在内存里面吗

0 回复 有任何疑惑可以回复我~

http://static.mukewang.com/img/59afb2e40001628708170214.jpg


这是图片的上半截儿。

0 回复 有任何疑惑可以回复我~

http://static.mukewang.com/img/59afb23200010d9905150659.jpg


正如题主所说,尽管该字段设置为unique key,但仍然可以添加两个null的值。而且都可查询出来。

0 回复 有任何疑惑可以回复我~

具有唯一性约束的列是可以插入空值的!

0 回复 有任何疑惑可以回复我~
#1

michael42 提问者

可以插入空值不应该是只能插入一个空值吗?插入两个空值那就相当于这两个空值是相等的,就不唯一了,不是吗?
2017-02-12 回复 有任何疑惑可以回复我~
#2

慕粉3291149 回复 michael42 提问者

不多说 贴截图看下啊 兄弟
2017-03-01 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
与MySQL的零距离接触
  • 参与学习       396886    人
  • 解答问题       3353    个

本课程涵盖全部MySQL数据库的基础,学习MySQL数据库的基础知识

进入课程

unique key插入两个空值问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信