一.实验题目
索引的基本操作与存储效率的体验
二.实验要求
掌握对数据库对象索引的基本操作。
三.实验代码
(1) 创建和删除索引。
(2) 自己找一个较真实的含有较多记录的表,测试不使用索引和使用索引的效果。
**
首先创建20万条数据,用于比较索引的效果;
执行图片中的5~6行的代码,让SCYY0231表中产生20W条数据;
并且执行第8行代码,查找score大于3的数据,共有99562条数据,花时42.733秒;
执行第10条代码,为SCYY0231表中的score字段创建索引;
再去执行score>3的按条件查询的语句;
此次的花时为37.75秒
节省了5秒钟时间
四.实验总结
1.本次实验均基础操作,考察学生的索引的理解,语句:CREATE [UNIQUE]|[BITMAP] INDEX index_name ON table_name([column_name[ASC|DESC],…..]) |
[expression])[REVERSE][parameter_list];
2.索引的概念:建立在表列上的数据库对象,是对表上的一列或多列进行排序的结构,由于提高数据的查询效率.3.利用索引之所以能够提高查询效率,是因为在索引结构中保存了索引值及其相应的物理地址,即ROWID,并且按照索引值进行排序.
4.索引的类别:B树索引,函数索引,位图索引;
5.注意点:创建索引需要占用大象的存储空间,而且像表中添加或删除记录是,数据库需要花费额外的开销来更新索引,所以在实际应用中药确保索引得到有效的利用.
6.
7.B数索引是按照平衡树算法来组织索引的,在树的叶子节点中保存了索引值机器ROWID.在Oracle数据库中创建索引默认为B树索引.B树索引包括唯一索引、非唯一索引、反键索引、单列索引、多列索引、复合索引等.B树索引占用空间多,适合索引值基数高、重复率低的应用;
**