定义
在数据库中对基本表建立索引来提高查询效率,类似于一本书的目录
每一个索引都会确认一个 索 引 结 构 \textcolor{red}{索引结构} 索引结构,索引结构包括了索引项和指针,通过对索引项进行顺序或者Hash排序,就可以快速定位,从而通过指针找到记录
索引结构与表的关联
索引分类
普通索引索引
一个索引项可能对应多个存储记录
单一索引
每一个索引项只能对应唯一的数据记录
聚簇索引
基本表按照索引项顺序存储
创建索引
基本语法
CREATE UNIQUE|CLUSTER INDEX <索引名> ON <表名>(<列名>|次序|,<列名>|<次序>);
<表名>指向要建立索引的基本表的名字
索引可以建立在一列或者多列上,用逗号分隔
<次序>表示排列次序,升序 ASC,降序DESC, 缺省值 ASC
UNIQUE表示每一个索引对应唯一的数据记录
CLUSTER表示要建立聚簇索引
DBMS一般会自动创建主键(Primary Key)和UNIQUE列上的索引
实例
为Stu表建立索引,按Son升序建议唯一索引,按年龄降序建议普通索引
CREATE UNIQUE INDEX StuSon ON Stu(Son);
CREATE INDEX Stuage ON Stu(age DESC);
删除索引
如删除Stu、表的Stuage索引
DROP INDEX Stuage;
修改索引
如将索引StuSon修改为SSon
ALTER INDEX StuSon RENAME TO SSon;