我目前有一个由 3 列组成的复合 PK(集群),我们称它们为 A、B 和 C,所有这些都需要确保唯一性。由于外部因素,我需要通过删除当前 PK 并在新列上添加新索引来修改此表。
这是由标准完成的
ALTER TABLE Table_Name DROP CONSTRAINT PK_Name
CREATE INDEX Index_Name ON Table_Name (NewColumn)
问题是该表很大(大约 7000 万行)并且对当前 PK 执行删除然后添加新索引需要一个多小时。有没有办法以更高效的方式解决这种情况?
该表只有其复合 PK,因此无需担心 NCI 或 FK 和其他依赖项。我正在使用 SQL Server 2008。