mysql中设置表中字段值唯一
资料引用:https://blog.csdn.net/guo_qiangqiang/article/details/86694409#mysql_6
1.在建表时加
CREATE TABLE member
(
id
int(11) NOT NULL AUTO_INCREMENT,
name
varchar(18) NOT NULL ,
phone
varchar(18) NOT NULL unique,
PRIMARY KEY (id
)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
2.建表后加
alter table member add unique(phone);
建表后加如果表内已经存在重复值则会报错,需要删除或修改重复值
3.使用navicat工具设置索引
使用navicat操作mysql数据库更加方便,推荐大家多多使用这种方式
设计表时:如图选择索引,第一项‘名’,随便自己起一个有意义的名字就行了。第二项是你要设置唯一性的字段,然后索引类型选择unique。
4.两个或多个字段组合的唯一索引
例子:一个用户,存了姓名和手机号,
这里只允许每个手机号只对应一个名称,即name和phone的组合不能出现重复的情况,也就是说不能有两条记录他们的name和phone都相同。
如何在mysql中进行设置呢,这里只给出navicat中的方法:如图只需要选中两个栏位就可以啦!
Mysql设置某字段唯一,sql语句:
ALTER TABLE 表名 ADD unique(字段名);
知识点:
1.主键一定是唯一性索引,唯一性索引并不一定就是主键;
2.一个表中可以有多个唯一性索引,但只能有一个主键;
3.主键列不允许空值,而唯一性索引列允许空值。