第5章索引和约束.PDFVIP

  • 2
  • 0
  • 约5.07万字
  • 约 26页
  • 2017-04-27 发布于湖北
  • 举报
第5章索引和约束

第 5 章 索引和约束 索引和约束都是构建在表基础之上的两个非常重要的方案对象,索引提供了快速 检索数据的存取路径,减少了对磁盘的 I/O 操作,加快了数据的检索速度;约束是在 单个表或各个表之间定义的用来维护数据的完整性和一致性的一系列的规则。灵活地 应用索引和约束,可以确保表的性能和数据的完整性,提高数据库的使用效率。本章 的主要知识点如下: ? 索引的作用和原理。 ? 索引的分类和创建方式。 ? 查看索引信息。 ? 约束的作用。 ? 约束的分类和创建方式。 ? 约束的维护。 5.1 创建索引 索引在日常生活中的应用无处不在,最常见的就是字典了,要从成千上万的字中找到所要 查看的字的解释,如果没有字典目录,所花费的时间与精力是非常大的,通过字典中的字典表, 可以很轻松地找到所要查询的字所在的位置。数据库的应用同样如此,特别是对于 Oracle 这种 大规模的数据库环境来说,不使用索引会导致整个数据库性能的低下。 5.1.1 索引的作用 对于数据库表操作来说,如果要找到某条数据,没有索引的情况下不得不遍历整个数据表, 不仅导致了检索速度的低下,而且因为频繁地进行磁盘 I/O 操作,很容易导致硬件性能的降低, 甚至导致数据丢失。 索引是建立在数据库表的一列或多列的用来加速访问表中数据的辅助对象,通俗地说,索 引类似于一本书的目录,或者是电子书的书签,例如“Oracle SQL Reference”这本书,如果要 查找 Oracle SQL 的操作符部分,可以通过以下两种方式。 ? 顺序访问方式:通过顺序访问每一页,判断要翻到的页面是否为需要的页,当一本书 的页数过多时,这种方式将花费大量的时间。 102 10 从零开始学 Oracle 2 ? 索引访问方式:很多电子书都提供了图书的书签,这些书签将每个章节、小节制作成 可以定位的结构,当用户要查找书中特定的内容时,只需要检索书签即可,这种方式 使得用户只需要检索书签就能快速定位到目标位置,节省了大量的时间。 在 Oracle 中,索引的作用就好比电子书的书签,而数据就好像是电子书的内容。索引与数 据的关系如图 5.1 所示。由图中可以看到,当用户要检索数据库表中的数据时,首先通过对保 存了索引的存储位置进行高速检索,每一个索引键对应了一个行指针,这个行指针将指向具体 的行,使用索引具有如下的优点: ? 索引使得检索数据的速度大大加快。 ? 创建索引时自动添加了唯一性约束,通过使用唯一性索引可以保证数据库表中每一行 数据的唯一性。 ? 通过索引可以加快表与表之间的连接,使得在数据库中进行多表连接查询时速度明显 增强。 ? 使用了索引后,在分组和排序子句进行数据汇总时,可以显著地减少查询中分组和排 序的时间。 但是索引需要在表基础上创建,需要占用额外的物理空间,而且对表进行修改时,比如增、 删、改数据的时候,需要动态地进行维护,这会降低数据维护的速度。 索引键 行指针 用户检索 行指针 行指针 索引 数据库表 行指针 用户

文档评论(0)

1亿VIP精品文档

相关文档