索引基础 索引的创建和使用 索引的删除 除 表 以 外 ,索 引 可 能 就 是 大 型 数 据 库 系 统 中 最 重 要 的 对 象 了
索 引 是 一 种 树 型 结 构 ,如 果 使 用 正 确 ,可 以 减 少 定 位 和 查 询 数 据 所 需 的 I/O 操 作
另 一 种 说 法 是 ,索 引 可 以 加快 表 中 查 找 数 据 记 录 的 速 度
索引第 章 SQL 技术与网络数据库开发详解 ·58·5
1 索 引 基 础 索引是一种数据库对象
在有大量记录的数据表中查询数据时,如果使用索引可以很快查到想要的数据
索引还有另外一种用途,那就是强制数据的唯一性
1 使用索引的原因 对于大部分数据库用户来说索引是一个非常陌生的概念
因为普通用户很少特意去使用索引,只有那些管理着海量数据的 DBA 才会去特意创建索引和使用索引
使用索引有两个主要的原因: 提供唯一的码值
提高查询性能
当用户创建带有 PRIMARY KEY 或 UNIQUE 约束的数据表时,SQL Serv er 或 Oracle 早已经在后台为该表自动创建了唯一索引,并以此强制数据的唯一性
使用索引能够提高性能的原因其实也很好理解
例如,要查询本书中关于 Oracle 的 DECODE 函数的内容,可以使用两种方法
一种是从第 1 页开始一页一页地向后找;另一种是在目录中先找到DECODE 函数所在的页数,然后,直接翻到该页上
可想而知,在书比较厚的情况下,采用第二种方法很快就能找到需要的内容
这里的索引就像本书的目录,因此使用索引会提高查询性能
当然,假设本书只有 3 页,则使用第一种方法会更实惠
这就表明数据表中的记录越多,使用索引就会得到越大的效益
反之,使用索引就没有什么价值了
2 索引的种类 SQL Serv er 和