mysql索引二(唯一索引)

前文中介绍了MySQL中普通索引用法,和没有索引的区别。mysql索引一(普通索引)

下面学习一下唯一索引。

创建唯一索引的目的不是为了提高访问速度,而只是为了避免数据出现重复。唯一索引可以有多个但索引列的值必须唯一,索引列的值允许有空值。如果能确定某个数据列将只包含彼此各不相同的值,在为这个数据列创建索引的时候就应该使用关键字UNIQUE,把它定义为一个唯一索引。

添加数据库唯一索引的几种方式:

1,创建表的时候直接设置。

DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `id` int(11),
  `pwd` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK_user_name` (`name`) 
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8;

为user表的name字段创建名为UK_user_name的唯一索引。

2,创建唯一索引

create unique index UK_user_age on user(age);

3,建表后添加约束

alter table user add unique index UK_user_pwd(pwd)

4,删除索引

alter table user drop index UK_user_pwd

或者

DROP INDEX [indexName] ON mytable;

通过测试可以发现,唯一索引是可以为null,但是不可以重复。

如图:





猜你喜欢

转载自blog.csdn.net/u012138706/article/details/80270689