开发者学堂课程【MySQL 高级应用 - 索引和锁:索引分类和建索引命令语句】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/598/detail/8593
索引分类和建索引命令语句
目录
一、mysql 索引分类
1、单值索引
2、唯一索引
3、复合索引
4、基本语法
一、mysql 索引分类
1.单值索引:
即一个索引只包含单个列,一个表可以有多个单列索引。
举例:
一个人可以有两个手机号,但是名字还是同一个人的;一个表中的多个索引最好不要超过五个。
2.唯一索引:
索引列的值必须唯一,但允许有空值。
加了约束之后就是索引,如同银行里的银行卡卡号是不可能重复的,就算全球的名字会重复,卡号不能重复。
3.复合索引:
即一个索引包含多个列。
4.基本语法:
CREATE [UNIQUE ]INDEX index Name ON my table(column name(length));
ALTER my table ADD[UNIQUE ] INDEX [index Name] ON (column name(length)).
DROP INDEX [index Name] ON my table;
SHOW INDEX FROM table _name\G
有四种方式来添加数据表的索引:
ALTERTABLE to l_ name ADD PRIMARYKEY (column _list):
该语句添加一个主键,这意味着索引值必须是唯一的,且不能为 NULL。
ALTER TABLE to l _name ADD UNIQUE index _name (column _it):
这条语句创建索引的值必须是唯一的(除了NULL外,NULL可能会出现多次)。
ALTER TABLE tb l _name ADD INDEX index _name (column _list):
添加普通索引,索引值可出现多次。
ALTER TABLE t bl _name ADD FULLTEXT index _name (column _list)
该语句指定了索引为 FULLTEXT,用于全文索引。