我有7个包含超过7亿行数据的表,它们包含旧数据。
例如:MstOrderInfo
:在此表中,索引不正确。群集的非唯一索引位于两个非唯一列(ProductID
& CustomerID
)&我们正在使用这些列与其他表连接。我们在此表中有一个标识列(例如:OrderUniqueID
,并且它不用于任何地方的连接)。现在,我被要求创建历史表并将这些旧数据从这些表中移动到历史表中。有人可以帮帮我吗?我需要遵循哪些关键点?
主表名称为MstOrderInfo
。集群& {(1}}文件组中存在非聚集索引。
我正在考虑遵循的步骤:
使用新名称创建主表的副本:Fl_ORDER7
。
在此表上:MstOrderInfo_bak,在MstOrderInfo_bak
文件组中的标识列(OrderUniqueID
)上创建唯一的聚簇索引,并在其上创建非聚集的非唯一索引( Fl_ORDER6
文件组中的CustomerID
和ProductID
}列。
从主表(从Fl_ORDER7
到MstOrderInfo
)将当前(必填)数据移到此表中。
将原始表格MstOrderInfo_bak
重命名为MstOrderInfo
,将MstOrderInfo_History
重命名为MstOrderInfo_bak
。
删除MstOrderInfo
(以前为MstOrderInfo_History
)表格中的索引。在MstOrderInfo
中的标识列(OrderUniqueID
)和非聚集索引(例如:CustomerID
& ProductID
)上创建集群索引。
在这些表上重建索引。