我有一个临时表(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视图中删除索引,那么它可以正常工作。
我让它处理另一组具有索引视图的表,所以我不确定为什么它不能用于这些。有没有人知道为什么会这样?我还应该检查什么?
答案 0 :(得分:0)
现在问题已经解决了。我再次重新创建了索引视图,它现在正在工作。除了索引的名称之外,我实际上没有改变任何东西,所以我不确定问题是什么。