首页 > 解决方案 > DELETE 语句与 REFERENCE 约束冲突,级联删除

问题描述

我想在运行查询时删除用户表单“dbo.Gebruiker”,但收到此错误消息。

DELETE 语句与 REFERENCE 约束“FK_Klant_Gebruiker_beheerderid”冲突。冲突发生在数据库“Planning”、表“dbo.Klant”、列“BeheerderId”中。

在论坛上阅读后,他们说首先我必须从其他表中删除,所以当我运行查询时,我再次收到另一条消息

DELETE 语句与 REFERENCE 约束“FK_Gebruiker_Klant”冲突。冲突发生在数据库“Planning”、表“dbo.Gebruiker”、“KlantId”列中。

当我运行此查询以查看该列是否存在时

从 dbo.Gebruiker 中选择 *,其中 KlantId='1CA25570-1A02-42FC-836D-4897B95EF44A'

它没有显示任何内容。

在谷歌和论坛上阅读后,他们说首先我必须删除外键约束。

我也把helpConstraint

在此处输入图像描述

在此处输入图像描述

请问从“dbo.Gebruiker”中删除用户的最佳方法是什么?

GebruikerTable 和依赖项 KlantTable 和依赖项

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

标签: sqlsql-server

解决方案


一般而言,如果您想删除 id 是另一个表中的 FK 的行并且您没有使用自动 DELETE 规则(如 CASCADE),那么您需要先对依赖表上的行执行一些操作数据库将允许您执行 DELETE。

似乎这是您的问题,因此您需要考虑如何处理当前引用您打算删除的行的键值的依赖表的行。


推荐阅读