数据库中索引优缺点

定义概念

       索引是为了加速对表中数据行的检索而创建的一种分散的存储结构。索引是针对表而建立的,它是由数据页面以外的索引页面组成的,每个索引页面中的行都会含有逻辑指针,以便加速检索物理数据。一旦建立了索引后,数据库中查询优化器使用索引来快速定位数据,然后就无需扫描表中给定查询的每一行了。

优缺点

优点

1.大大加快数据的检索速度;

2.创建唯一性索引,保证数据库表中每一行数据的唯一性;

3.加速表和表之间的连接;

4.在使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间。

缺点

1.索引需要占物理空间。

2.当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,降低了数据的维护速度。

索引类型

1、普通索引

最基本的索引,它没有任何限制,用于加速查询。

建表后,直接创建索引:

CREATE INDEX index_mytable_name ON mytable(name);

2、唯一索引

索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。

建表后,直接创建索引:

CREATE UNIQUE INDEX index_mytable_name ON mytable(name);

3、主键索引

是一种特殊的唯一索引,一个表只能有一个主键,不允许有空值。一般是在建表的时候同时创建主键索引。

4、组合索引

指多

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据库索引是一种数据结构,用于加速数据库查询操作。它是在表创建的一种特殊数据结构,用于快速查找表特定行的位置。索引的作用类似于图书馆的书目索引,可以快速找到所需的书籍。 优点: 1. 提高查询效率:索引可以大大提高查询的效率,因为它允许数据库引擎更快地找到需要的数据行。 2. 减少数据扫描:如果没有索引数据库引擎将不得不扫描整个表来找到匹配的数据行。有了索引数据库引擎可以使用快速的索引查找算法来避免全表扫描,从而减少查询时间。 3. 加速排序:如果查询包括排序操作,有索引的情况下排序时间将会更快。 4. 提高数据完整性:可以使用索引来强制唯一性约束和外键约束,从而提高数据完整性。 缺点: 1. 增加存储空间:索引需要占用磁盘空间。如果表非常大,可能需要大量的磁盘空间来存储索引,从而增加存储成本。 2. 增加写入操作的成本:每当对表进行插入、更新或删除操作时,所有相关的索引都必须进行更新。因此,索引会增加写操作的成本。 3. 延迟查询优化:如果数据库的数据经常变化,优化查询计划的过程可能需要更长的时间,因为数据库引擎必须不断地重新评估查询计划,以确保使用最有效的索引。 4. 可能会导致锁定:在某些情况下,使用索引可能会导致数据库引擎对表进行锁定,从而影响其他会话的性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值