Zer*_*ity 3 sql-server sql-server-2005 sql-server-2008 non-clustered-index
为什么我们在sql server 2005中有249个非聚集索引?为什么不是240或300?和sql server 2008一样的问题,为什么999?为什么不是800或1000?
他们制作漂亮的(圆形)数字......
SQL Server 2005: 1聚簇索引+ 249非聚簇索引=每个表250个索引
SQL Server 2008: 1聚簇索引+ 999非聚簇索引=每个表1000个索引
更新:
您应该在SQL Server 2008中询问为什么999.
这已在我的问题的答案中解释.通过在SQL Server 2008中引入过滤索引来解释这种增加.
sysindexes中index_id的数据类型表示:
因此,在SQL Server的未来版本中,我们仍然可以观察到增加到3198(3199-1).
我以前认为sys.indexes是sysindexes的同义词,但我刚才发现它们不同,sysindexes有indid(而不是index_id)并且不包含XML索引的行!
sys.indexes中的index_id类型为int(4bytes),sys.sysindexes中的indid类型为smallint(2bytes)(SQL Server 2008,可能比以前的版本增加了)
我找到了有用而有趣的文章Tibor Karaszi.sys [.]索引中的密钥计数