提问 发文

索引

微微菌

| 2023-06-19 13:54 156 0 0

索引是为了加速对表中数据行的检索而创建的一种分散的存储结构。索引是针对表而建立的,它是由数据页面以外的索引页面组成的,每个索引页面中的行都会含有逻辑指针,以便加速检索物理数据。

索引提供指向存储在表的指定列中的数据值的指针,然后根据您指定的排序顺序对这些指针排序。数据库使用索引以找到特定值,然后顺指针找到包含该值的行。这样可以使对应于表的SQL语句执行得更快,可快速访问数据库表中的特定信息。

当表中有大量记录时,若要对表进行查询,第一种搜索信息方式是全表搜索,是将所有记录一一取出,和查询条件进行一一对比,然后返回满足条件的记录,这样做会消耗大量数据库系统时间,并造成大量磁盘I/O操作;第二种就是在表中建立索引,然后在索引中找到符合查询条件的索引值,最后通过保存在索引中的ROWID快速找到表中对应的记录。

索引的主要作用是快速取数据、保证数据记录的唯一性、实现表与表之间的参照完整性,以及在使用ORDER by、group by子句进行数据检索时,利用索引可以减少排序和分组的时间。索引的缺点在于需要占物理空间,以及当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,降低了数据的维护速度。

根据数据库的功能,可以在数据库设计器中创建四种索引,即单列索引、唯一索引、主键索引和聚集索引,具体解释如下:

  • 单列索引:最基本的索引类型,没有唯一性之类的限制。
  • 唯一索引:不允许其中任何两行具有相同索引值的索引。
  • 主键索引:数据库表中一列或列组合(字段)的值唯一标识表中的每一行,该列称为表的主键。
  • 聚集索引:也称为聚簇索引,在聚集索引中,表中行的物理顺序与键值的逻辑(索引)顺序相同。一个表只能包含一个聚集索引,即如果存在聚集索引,就不能再指定CLUSTERED 关键字。
收藏 0
分享
分享方式
微信

评论

全部 0条评论

9228

文章

4.72W+

人气

12

粉丝

1

关注

官方媒体

轻松设计高效搭建,减少3倍设计改稿与开发运维工作量

开始免费试用 预约演示

扫一扫关注公众号 扫一扫联系客服

©Copyrights 2016-2022 杭州易知微科技有限公司 浙ICP备2021017017号-3 浙公网安备33011002011932号

互联网信息服务业务 合字B2-20220090

400-8505-905 复制
免费试用
微信社区
易知微-数据可视化
微信扫一扫入群