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

Sql server 如何使用自引用外键从表中删除行,sql-server,sql-server-2012,cascade,Sql Server,Sql Server 2012,Cascade,在Sql Server 2012中,我有一个employee表。 如下 table {id, managerId, name} 并且该表在ManagerId和Id之间有一个外键 我想删除所有的人“约翰” 问题是我得到了一个外键异常(使用ef和级联删除)。 如何使用自引用外键从表中删除行。好的,假设您有一个名为John的经理。您不能删除他,因为您有他的员工的相关记录 第一步是更新要删除的经理的员工记录,使其没有经理或将其移动到新经理。然后您可以删除名为John的经理。好的,假设您有一位名为Jo

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

 table {id, managerId, name}
并且该表在ManagerId和Id之间有一个外键

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

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

好的,假设您有一个名为John的经理。您不能删除他,因为您有他的员工的相关记录


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

好的,假设您有一位名为John的经理。您不能删除他,因为您有他的员工的相关记录

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