确定阻止添加新级联删除的CASCADE DELETE路径

时间:2016-07-13 16:31:55

标签: sql sql-server tsql sql-server-2012

我的SQL数据库中有很多表,使用级联删除有大量外键关系。我已经确定现有的关系现在需要级联删除。尝试启用此功能会提供有用的消息:

Unable to create relationship Introducing FOREIGN KEY constraint on table may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints. Could not create constraint. See previous errors.

但是,它没有提到通过表集的其他路径会导致创建循环关系;它只是通过说:

来回避这个问题
modify other FOREIGN KEY constraints

我不想在实体框架中进行更改,因为我们正在以模型优先工作。

如何查看相关的竞争外键关系?

1 个答案:

答案 0 :(得分:0)

它不会躲避任何东西。有人假设你在某个地方有类似于实体关系(ER)图的东西,新人可以立即掌握外键关系及其原因。

如果你按照“模型优先”的方式工作,就像你说的那样,在你已经(显然)建造东西后,你不会发现你必须“在中游转换马”。 (这就是CREATE TABLE对我说的:你建造了一些东西。)

相关问题