1. 前言
工作使用的数据库是mysql,经常会与唯一索引打交道,借此记录下来。表的主键一般都会使用一个自增的数值(一般从0或1开始),所以更加关心的是如何建立唯一索引以及有没有必要建立唯一索引问题。
注意,别把唯一索引和主键相混淆了。
- 主键是索引的一种
- 不同行的主键和唯一索引对应值都是不同的
- 主键值不允许为null,而唯一索引允许
- 一个表只能有一个主键,唯一索引不一定
- 主键和唯一索引可以是表中多个字段的组合,一般只会在一列上建立唯一索引,多列的话则会考虑联合索引
关于唯一索引和主键区别的一些资料:
- https://www.cnblogs.com/zerocc/archive/2011/11/18/2254269.html
- https://zhidao.baidu.com/question/329151362.html
2. 索引概念
数据库索引是一个的数据结构,以协助快速查询,更新数据库中表的数据。索引的实现通常使用B树和变种的B+树(mysql常用的索引就是B+树)。【关于B树和B+树的相关知识可以另外补哈】
3. 索引的优缺点
- 优点
(1)创建索引,可以在查询的过程中,提高系统的性能<