如何使用自引用外键从表中删除行

时间:2013-10-16 14:56:54

标签: sql-server sql-server-2012 cascade

在Sql Server 2012中,我有一个员工表。 如下

 table {id, managerId, name}

该表在ManagerId和Id之间有一个外键。

我想删除所有人“约翰”。

问题是我得到了一个外键异常(使用ef和cascade delete)。 如何使用自引用外键从表中删除行。

1 个答案:

答案 0 :(得分:1)

好吧假设你有一个名叫约翰的经理。您无法删除他,因为您的员工有相关记录。

您的第一步是更新您要删除的经理的员工记录,以便没有经理或将他们转移到新经理。然后,您可以删除名为John的经理。