索引的创建、作用、及优化
1.索引是什么
索引是数据库帮助数据库获取数据的数据结构,好比书的目录,加快数据库的查询速度。
2.索引的作用
1)通过唯一性索引,可以保证数据库表中每一行数据的唯一性。(定义主键时服务器自动创建)
2)可以加快数据的检索速度。(快速定位)
3)实现表与表之间的参照完整性。
4)使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间
3.索引的创建与删除
普通模式创建:CREATE INDEX 索引名 ON 表名(列名1,列名2,…);
CREATE INDEX name_index ON index_table(name);
此为在index_table表上的name列上创建一个索引name_index。
在表上增加: ALTER TABLE 表名ADD INDEX 索引名 (列名1,列名2,…);
alter table index_table add index name_index(name)
创建表时指定索引:CREATE TABLE 表名 ( […], INDEX 索引名 (列名1,列名 2,…) );
索引删除
1)修改表的方式删除索引
ALTER TABLE 表名 DROP INDEX 索引名;
2)删除主键索引
ALTER TABLE 表名 DROP PRIMARY KEY;
索引类型
1)主键索引 PRIMARY KEY:它是一种特殊的唯一索引,不允许有空值。一般是在建表的时候同时创建主键索引。注意:一个表只能有一个主键。
2)唯一索引 UNIQUE:唯一索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。可以通过ALTER TABLE table