移除分区函数和分区方案

如果尝试删除一个绑定到既有表或索引的分区函数或分区方案,就会得到一个错误消息。也不能直接移除一个绑定到表的分区方案或分区函数(除非删除整个表,本技巧将会这么做)。如果开始是以堆方式创建表(没有聚集索引的表),然后创建一个聚集索引绑定到一个分区方案,那么可以使用CREATE INDEX DROP_EXISTING选项(参阅第5章)来重新创建索引而不引用分区方案。

使用下面的语法删除一个分区方案:

  1. DROP PARTITION SCHEME partition_scheme_name 

这个命令接受要删除的分区方案名作为参数。

使用下面的语法删除一个分区函数:

  1. DROP PARTITION FUNCTION partition_function_name 

同样,这个命令只接受要删除的分区函数名作为参数。

这个示例演示了如何删除一个分区函数和分区方案,假设在这种情况下可以删除源表(在正式应用下通常不能这样做):

  1. DROP TABLE Sales.WebSiteHitsHistory  
  2. DROP TABLE Sales.WebSiteHits  
  3.  
  4. -- 删除分区方案和分区函数  
  5. DROP PARTITION SCHEME HitDateRangeScheme  
  6. DROP PARTITION FUNCTION HitDateRange 

解析

这个示例演示了删除一个分区方案和分区函数。对于本例,我们需要在这之前先删除源表。

另外一种解决方案就是把所有的结果复制到一个外部表,删除表,删除分区方案和分区函数,然后重新命名把数据复制过去的那张表。如果你的目标只是把表变成一个分区,其实可以合并所有分区,并且保留分区方案和分区函数。只有一个分区的表在功能上和一个普通的未分区表一样。

相关文章:

  • 2022-01-11
  • 2022-01-20
  • 2022-12-23
  • 2021-06-10
  • 2021-06-13
  • 2022-02-14
  • 2022-03-06
  • 2022-12-23
猜你喜欢
  • 2021-06-13
  • 2021-06-23
  • 2021-08-10
  • 2021-12-18
  • 2021-09-22
  • 2021-11-30
相关资源
相似解决方案