gpt4 book ai didi

sql - 数据库表中索引的缺点是什么?

转载 作者:太空狗 更新时间:2023-10-30 01:45:25 24 4
gpt4 key购买 nike

有什么理由不应该为我的每个数据库表创建索引,以作为提高性能的一种方式?似乎一定有一些原因,否则默认情况下所有表都会自动拥有一个。

我使用 MS SQL Server 2016。

最佳答案

表上有一个索引没什么大不了的。您会自动在作为主键或声明为唯一的列(或列组合)上建立索引。

索引有一些开销。索引本身占用磁盘和内存空间(使用时)。因此,如果空间或内存有问题,那么过多的索引可能会成为问题。当插入/更新/删除数据时,需要维护索引以及原始数据。这会减慢更新速度并锁定表(或部分表),这会影响查询处理。

每个表上少量的索引是合理的。这些应该在设计时考虑到典型的查询负载。如果你索引每个表中的每一列,那么数据修改会变慢。如果您的数据是静态的,那么这不是问题。但是,用索引耗尽所有内存可能是个问题。

关于sql - 数据库表中索引的缺点是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41410482/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com