ALTER TABLE SWITCH分区在SQL Server 2008中失败

时间:2010-04-21 10:38:55

标签: sql sql-server sql-server-2008 partitioning

我有一个临时表(stage_enrolments)和一个生产表(注册表)。登台表未分区,生产表是。我正在尝试使用ALTER TABLE SWITCH语句将登台表中的记录传输到生产。

ALTER TABLE dbo.stage_enrolments 切换到dbo.enrolments PARTITION @partition_num;

但是,当我执行此语句时,我收到以下错误:

ALTER TABLE SWITCH语句失败。目标表'Academic.dbo.enrolments'由1个索引视图引用,但源表'Academic.dbo.stage_enrolments'仅由0个匹配的索引视图引用

我在dbo.stage_enrolments上定义了与dbo.enrolments相同的索引视图 - 虽然注册视图是分区的。我已经尝试重新创建视图及其索引,检查所有选项是否相同,但我得到相同的结果。如果我从dbo.enrolments视图中删除索引,那么它可以正常工作。

我让它处理另一组具有索引视图的表,所以我不确定为什么它不能用于这些。有没有人知道为什么会这样?我还应该检查什么?

1 个答案:

答案 0 :(得分:0)

现在问题已经解决了。我再次重新创建了索引视图,它现在正在工作。除了索引的名称之外,我实际上没有改变任何东西,所以我不确定问题是什么。