不幸的是,BOL对此有点模糊,但index_id = 0
或sys.indexes
上的sys.partitions
似乎是指表格本身没有聚集索引的表格。是的 - 或者我错过了什么?
答案 0 :(得分:8)
sys.indexes中的index_id = 0是否引用 到桌子本身?
不,对于基于堆的表,它将始终存在,并且它引用IAM(索引分配映射)。对于具有聚簇索引的表,它将不存在。
请注意,“type_desc”是这些索引上的HEAP,有一个关于Index Allocation Map的非常好的博客条目。
因此,堆表(没有聚簇索引的表)将始终具有一个条目index_id = 0
的索引,而具有聚簇索引的表将始终具有index_id = 1
的条目。