一、普通索引
仅仅提高查询效率
Create index 你自己起的索引名字 on 表名(需要添加索引的字段);
删除普通索引:
Drop index 你自己起的索引名字 on 表名;
二、联合索引
和普通索引一样为了提高查询效率,但同时也为数据库节省了开销
Create index 你自己起的索引名字 on 表名(需要添加索引的第1个的字段,需要添加索引的第2个的字段,...,需要添加索引的第n个的字段);
删除联合索引:
ALTER table 表名 drop index 你自己起的索引名字;
三、主键索引
全表只能有一个,此字段必须具有唯一性
ALTER TABLE 表名 ADD Primary key (需要添加索引的字段);
删除主键索引:
ALTER TABLE 表名 drop primary key;
四、唯一索引
和主键索引相似,但是主键索引全表只能有一个,唯一索引全表可以有多个
Create unique index 你自己起的索引名字 on 表名(需要添加索引的字段);
删除唯一索引:
ALTER table 表名 drop index 你自己起的索引名字;
五、外键索引
使两表产生关联
创建外键索引的同时也会创建外键,创建外键的同时同样也会创建外键索引
Alter table 表名 ADD CONSTRAINT 你为外键起的名字 FOREIGN KEY(你的外键字段名) REFERENCES 外表表名(对应的表的主键字段名);
删除外键:
Alter table 表名 Drop foreign key 你为外键起的名字;
删除外键索引:
Alter table 表名 Drop key 你为外键起的名字;
5、全文索引:
全文检索,提高模糊查询效率
只能在文本类型CHAR,VARCHAR, TEXT类型字段上创建此索引
此索引在mysql5.6之前只有myisam数据库引擎才支持,到了mysql5.6,Innodb也开始支持了
ALTER TABLE 表名 ADD Fulltext 你自己起的索引名字 (需要添加索引的字段);
删除全文索引:
Drop index 你自己起的索引名字 on 表名;