Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 向聚集索引添加超过16列_Sql Server - Fatal编程技术网

Sql server 向聚集索引添加超过16列

Sql server 向聚集索引添加超过16列,sql-server,Sql Server,是否有任何方法可以在聚集索引中添加超过16列。自SQLServer2008起。但是,如果您需要在超过16列上建立聚集索引,我怀疑瓶颈在其他地方。否。此外,对于组合密钥大小,您的数据总量限制为900字节 从页面上引用 最多可将16列合并为一个 单个复合索引键。所有的 复合索引键中的列必须 在同一个表或视图中。这个 组合仪表的最大允许尺寸 索引值为900字节。更多 关于变量类型的信息 组合索引中的列,请参见 备注部分 聚集索引中最多16列的问题只能通过纯粹的完全疯狂来解决。你永远被锁在电脑之外,永远

是否有任何方法可以在聚集索引中添加超过16列。

自SQLServer2008起。但是,如果您需要在超过16列上建立聚集索引,我怀疑瓶颈在其他地方。

否。此外,对于组合密钥大小,您的数据总量限制为900字节

从页面上引用

最多可将16列合并为一个 单个复合索引键。所有的 复合索引键中的列必须 在同一个表或视图中。这个 组合仪表的最大允许尺寸 索引值为900字节。更多 关于变量类型的信息 组合索引中的列,请参见 备注部分


聚集索引中最多16列的问题只能通过纯粹的完全疯狂来解决。你永远被锁在电脑之外,永远不允许尝试这样的事情


因此,这是不可能的。

正如其他人指出的那样,这是不可能的,甚至是不可取的。对于宽键,聚集索引不是一个好的选择:

集群中的键值 所有非聚集索引都使用索引 索引作为查找键。任何 在上定义的非聚集索引 同样的表格将非常重要 较大,因为非聚集索引 条目包含集群键和 还包括为此定义的键列 非聚集索引

如果您对非聚集索引感到满意,那么从SQL Server 2005及更高版本开始,您可以使用它来克服900字节、16列的限制。

否,16是限制

但是您可以将这些键组合成一个散列值。这将提高速度。
当然,散列值应该被索引。

16列聚集索引似乎太多了。也许你应该问你真正想要答案的问题?我能理解你为什么被否决,但也能理解你的情绪,你应该用一种不那么冒犯的方式重新措辞