菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
108
0

'ALTER TABLE SWITCH' 语句失败。表'MGXXX.dbo.user_XXX' 已分区,但 索引'ix_user_XXX_user_id' 未分区。

原创
05/13 14:22
阅读数 91115

问题描述:

今天在做分区切换的时候把旧log数据切到clear表,遇到了这个问题,顺便做下笔记记录一下解决方法

'ALTER TABLE SWITCH' 语句失败。表'MGXXX.dbo.user_XXX' 已分区,但 索引'ix_user_XXX_user_id' 未分区。

 

解决方法:

源表的分区以及目标表或分区必须在同一个文件组中,对应的索引或索引分区也必须在同一个文件组中。

我检查了一下报错的索引,果然是文件组是[PRIMARY],分区表是用的分区文件组

重建分区方案索引,把原来的索引删除,再切分区就可以了

#分区方案,非聚集索引
CREATE  NONCLUSTERED INDEX [ix_user_XXX_user_id] ON [dbo].[user_XXX]
(
    user_id asc
)WITH (online=on) ON [ps_user_XXX]([ctime])
GO

发表评论

0/200
108 点赞
0 评论
收藏
为你推荐 换一批