小编Red*_*ter的帖子

无法删除非 PK 索引,因为它在外键约束中被引用

我有一张名为MyTable. 主键是一个名为 的标识 int 列MyTableID。在MyTableID名为的 PK 列上有一个唯一的聚集索引PK_MyTable

我注意到IX_MyTable_MytableID该表上有一个额外的非聚集唯一索引,只有一个 column MyTableID,没有其他包含的列。这个索引显然是多余的,但是当我尝试删除它时,我收到一条错误消息:

The constraint 'IX_MyTable_MyTableID' is being referenced by table 'OtherTable', 
foreign key constraint 'FK__OtherTable__MyTableID__369C23FC'.
Run Code Online (Sandbox Code Playgroud)

为什么 FK 约束依赖于非聚集唯一索引而不是主键约束?如何更新 FK 以使用聚集 PK 索引而不是其他索引?

index sql-server constraint primary-key sql-server-2008-r2

4
推荐指数
1
解决办法
6609
查看次数