mysql列属性之唯一键

首先说特征:
一张表往往需要多个字段具有唯一性,但是只有一个主键
唯一键就是用来解决表中多个字段需要具有唯一性的问题。
和主键的区别在于:
唯一键允许字段值为空,并且允许多个空值存在。

首先还是追加唯一键和删除唯一键的方法:

--追加
alter table tableName add unique key(xxx)
--删除
alter table my_unique3 drop index number;
--这里和主键做一点区分的是这里是drop index + 列属性
--因为唯一键可能有多个

两外两种创建方法和主键差不多,这里就不重复写了,看主键就明白了
只不过换了个词

create table my_unique(
    number char(10) unique comment '学号',//直接声明
    name varchar(20) not null
)charset utf8;
...
unique key(number) --在列属性的最后边补

小插曲:

desc tableName

会发现我们命名的number字段的key是PRI,这是主键的标识
咱们设置的唯一键UNI,怎么变成了主键PRI啊?这是由于当唯一键满足非空条件的时候,其性质就和主键一样啦,因此在表中显示为PRI

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值