0

我有一个每周分区的表,并定义了分区函数和方案。最重要的是该表具有具有相同每周分区方案的聚集列存储索引。

所以现在我必须在分区函数和方案中添加更多范围。失败并显示“无法更改具有非空分区的分区功能......”的错误,其中数据文件只有 4KB,没有加载数据。

从 2014 Ssms 的一篇帖子中,我了解到我们需要禁用聚集索引并更改分区方案并再次启用。

请帮助解决这个问题。我正在使用 2016 sql 和企业版。提前致谢。

4

1 回答 1

2

对于列存储索引,您需要清空要拆分的分区。这可以通过以下方式完成:

  • 将数据移动到其他分区(通过更新其分区键)
  • 改变分区模式(带有 NEXT USED 子句)和分区函数(带有 SPLIT RANGE 子句)
  • 将数据移回正确的分区。

以上可以在一笔交易中完成。

对于未来,(假设数据按日期分区)建议有几个空分区,因此维护任务/作业可以自动拆分分区(并为未来的周期创建一些新分区)而不会出现任何问题。

或者,您可以将 ALTER TABLE 与 SWITCH PARTITION 子句一起使用,但这种方法效率较低。SWITCH PARTITION 主要用于快速删除旧分区。

于 2018-01-02T23:19:24.673 回答