【问题标题】:Converting a Heap table to Clustered table将堆表转换为聚簇表
【发布时间】:2020-06-30 18:59:36
【问题描述】:

问题概述:

我们在 Id 列上创建了一个没有聚集索引的表,并向该表中插入了数百万条数据。当我检查索引时,它显示索引名称为 NULL。通过一些谷歌搜索,它看起来像一个堆表。当我在这个表上创建一个聚集索引时,它显示了两个同名的索引。对于堆表选择,更新速度很慢,但插入速度很快。

有没有办法删除以前的索引?或将堆表转换为聚簇表? 或者是否有任何可能的方法来只拥有聚集索引数据。

【问题讨论】:

    标签: sql-server indexing clustered-index


    【解决方案1】:

    有没有办法删除以前的索引?或者将堆表转换为聚簇表?

    是的。只需在表上创建聚集索引或聚集列存储索引。

    或者是否有任何可能的方法来只拥有聚集索引数据。

    一个表只有一个聚集索引是很常见的。

    【讨论】:

    • 我在那个表上创建了一个聚集索引。现在它显示了两个具有相同名称的索引。索引 ID 和索引名称都相同
    • 那么您的查询有问题。索引由 (object_id,index_id) 唯一标识。聚集索引将具有 index_id=1、堆 index_id=0 和非聚集索引 index_id>1。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-29
    • 1970-01-01
    相关资源
    最近更新 更多