查找表的所有外键,并在删除时添加级联



我有一些表有外键引用。我需要在特定表中找到所有外键名称,并使用SQL查询添加级删除选项。 我不想删除我的表或删除数据。某些表可能有循环引用。 有什么解决方案可以做到这一点吗?

下面的查询将帮助您找到表的外键

EXEC sp_fkeys 'TableName' 

到目前为止我知道,你不需要表删除,但首先你必须删除外键,然后你必须再次创建它,添加你预期的规则 下面是一个示例

GO
ALTER TABLE EmailContact DROP
CONSTRAINT FK_EmailContact_Email
GO
ALTER TABLE EmailContact ADD
CONSTRAINT FK_EmailContact_Email  
FOREIGN KEY (EmailId)
REFERENCES Email (Id)
ON DELETE CASCADE

最新更新