SQL Compact Edition 是不是支持聚集索引?

Posted

技术标签:

【中文标题】SQL Compact Edition 是不是支持聚集索引?【英文标题】:Does SQL Compact Edition Support Clustered Indexes?SQL Compact Edition 是否支持聚集索引? 【发布时间】:2009-03-26 20:34:21 【问题描述】:

SQL CE 是否支持聚集索引?

【问题讨论】:

【参考方案1】:

MSDN 谈到了 NONCLUSTERED 论点:

This is the only supported index type

【讨论】:

【参考方案2】:

根据 SQL Server Compact Edition 的 CREATE INDEX 语法判断,唯一支持的索引类型是 NONCLUSTERED。

【讨论】:

【参考方案3】:

大多数基于文件的数据库不支持聚集索引。如果您乱序插入新行,则需要重写整个索引。由于这很昂贵(并且是阻塞操作),大多数文件数据库都不允许这样做。

但是,您通常会获得自然秩序的概念。您插入的顺序是它们在磁盘上的顺序。这是完整的 SQL Server 所没有的,它总是从以前的页面中回收可用空间。

【讨论】:

现代基于文件的数据库也会自动回收空间,因此它们的表就像数据库服务器的表一样碎片化。此外,您不必重写整个索引 - 这与将新条目插入普通索引完全相同。

以上是关于SQL Compact Edition 是不是支持聚集索引?的主要内容,如果未能解决你的问题,请参考以下文章

我是不是需要在所有客户端的桌面上安装 SQL Server Compact Edition?

Sql Server Compact Edition 3.5:数据是不是保留在数据库文件中?

如何部署 SQL Server Compact Edition 4.0?

如何在 Sql Server Compact Edition SELECT 语句中复制 Rank 函数?

使用 SQL Server Compact Edition 的 Linq-to-SQL

SQL Server Compact Edition - 序列列?