alp*_*pav 5 sql sql-server-2005 foreign-keys primary-key clustered-index
我在GUID列上创建聚簇主键时犯了错误.有许多表引用具有已定义外键的表.表大小不重要.
我想将它从群集转换为非群集,而无需手动删除和重新创建任何外键甚至主键约束.
是否有可能在MS SQL2005中实现这一点,如果是的话?
如果是的话,是否可以实现ONLINE(没有db停机时间)?
您可以尝试先创建唯一的非聚集NC索引,然后删除聚集PK。FK 应该识别这个其他索引(但可能不会:从未尝试过)。
当您运行 ALTER TABLE 删除集群 PK 时,请使用ONLINE选项。但是,它仅在企业版中可用。
ALTER TABLE Mytable DROP CONSTRAINT PK_Mytable WITH (ONLINE = ON)
您不能将 ONLINE 用于 ADD CONSTRAINT 位。
基本上,您的选择是有限的,不会阻塞,或者先创建另一个表并将数据移动到...