索引的建立与删除

/ 0评 / 1

当表的数据量比较大时,查询操作会比较耗时。建立索引是加快查询速度的有效手段。数据库索引类似于图书后面的索引,能快速定位到需要查询的内容。用户可以根据应用环境的需要在基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。
索引虽然能够加速数据库查询,但需要占用一定的存储空间,当基本表更新时,索引要进行相应的维护,这些都会增加数据库的负担,因此要根据实际应用的需要有选择地建立索引。
目前SQL标准中没有涉及索引,但商用关系数据库管理系统一是不同的关系数据库管理系统支持的索引类型不尽相同。
一般说来, 建立与删除索引由数据库管理员或表的属主(ower), 即建立表的人,负责完成。关系数据库管理系统在执行查询时会自动选择合适的索引作为存取路径,用户不必也不能显式地选择索引。索引是关系数据库管理系统的内部实现技术,属于内模式的范畴。
1.建立索引
在SQL语言中,建立索引使用CREATE INDEX语句,其一般格式为
CREATE [UNIQUE] [CLUSTER] INDEX <索引名>
ON <表名> (<列名> [<次序>][,<列名> [<次序>]] …);
其中,<表名>是要建索引的基本表的名字。索引可以建立在该表的一列或多列上,各列名之间用逗号分隔。每个<列名>后面还可以用<次序>指定索引值的排列次序,可选ASC (升序)或DESC (降序),默认值为ASC。
UNIQUE表明此索引的每个索引值只对应唯一的数据记录。
CLUSTER表示要建立的索引是聚簇索引。
2.修改索引
ALTER INDEX <旧索引名> RENAME TO <新索引名>;
3.删除索引
索引一经建立就由系统使用和维护,不需用户干预。建立索引是为了减少查询操作的时间,但如果数据增、删、改频繁,系统会花费许多时间来维护索引,从而降低了查询效率。这时可以删除些不必要的索引。
在SQL中,删除索引使用DROP INDEX语句,其一般格式为
DROP INDEX <索引名>;
删除索引时,系统会同时从数据字典中删去有关该索引的描述。
查看数据字典

发表评论

电子邮件地址不会被公开。 必填项已用*标注