加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL Server 2008中的内部联接删除?

发布时间:2020-12-12 07:50:16 所属栏目:MsSql教程 来源:网络整理
导读:我试图加入2个表并对其进行删除. DELETE TableA FROM TableA aINNER JOINTableB b on b.Id = a.Idwhere title like 'test' 以上就是我想出来的,但是我一直在努力 The DELETE statement conflicted with the REFERENCE constraint 我想如果我将两个表合并在一
我试图加入2个表并对其进行删除.
DELETE TableA 
FROM TableA a
INNER JOIN
TableB b on b.Id = a.Id
where title like 'test'

以上就是我想出来的,但是我一直在努力

The DELETE statement conflicted with the REFERENCE constraint

我想如果我将两个表合并在一起,那么我将同时删除两个表,并且没有任何约束会发生冲突.

我在查询中遗漏了什么吗?

解决方法

首先尝试使用该标题条件删除TableB
然后删除TableA中的那些记录
DELETE FROM TableB
WHERE Id IN 
( SELECT Id FROM TableA WHERE title = 'test')

DELETE FROM TableA
WHERE title = 'test'

当您在TableB中仍有引用时,引用约束阻止您删除TableA中的行

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读