3

不幸的是,BOL 在这方面有点模糊,但index_id = 0在表上没有聚集索引的情况下sys.indexessys.partitions它似乎是指表本身。是的 - 还是我错过了什么?

4

1 回答 1

8

sys.indexes 中的 index_id=0 是否引用表本身?

不,对于基于堆的表,它将始终存在并且它指的是 IAM(索引分配映射)。对于具有聚集索引的表,它将不存在。

请注意,“type_desc”是这些索引上的 HEAP,关于Index Allocation Map有一个非常好的博客条目。

因此,堆表(没有聚集索引的)总是有一个带有条目的索引index_id = 0,而带有聚集索引的表总是有一个带有 的条目index_id = 1

于 2009-01-18T22:48:07.330 回答