gpt4 book ai didi

sql-server - Sql Server 索引包含主键吗?

转载 作者:行者123 更新时间:2023-12-02 06:23:14 26 4
gpt4 key购买 nike

我的一位同事的印象是,当向 SQL Server 2008 中的表添加索引时,PK 的索引也会添加到该索引中。因此,如果您使用更宽的主键,那么该键也将包含在新索引中,从而大大增加所使用的磁盘空间,并且超出了 PK 上的索引已经付出的代价。我以前没听说过,到目前为止我的搜索都是空的。

希望这里有人可以指点我相关文档来确认或否认这一点。请问?

最佳答案

您的同事正在将“主键”与“聚集索引键”混为一谈(可能是因为默认情况下,在堆上创建的未指定 nonclustered 关键字的 PK 将成为表的聚集索引) .

It is true在具有聚集索引的表上,聚集索引键的值将作为包含列添加到所有非聚集索引中,以充当行定位器。 (尽管如果列已经是非聚集索引定义的一部分,则不会添加两次)。

理想的聚集索引键是

  • 唯一(要充当行定位器,它必须是唯一的 - 如果不是,SQL Server 将添加一个唯一符)
  • 窄(因为它在所有非聚集索引中再现)
  • 静态(避免在多个不同位置更新值)
  • 不断增加

关于sql-server - Sql Server 索引包含主键吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3842392/

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