我正在尝试将 2 个表连接在一起并对其进行删除。
DELETE TableA
FROM TableA a
INNER JOIN
TableB b on b.Id = a.Id
where title like 'test'
以上是我想出的,但是我不断得到
DELETE 语句与 REFERENCE 约束冲突
我想如果我将 2 个表合并在一起,那么我将同时删除这两个表,并且不会有任何约束冲突。
我在查询中遗漏了什么吗?
我正在尝试将 2 个表连接在一起并对其进行删除。
DELETE TableA
FROM TableA a
INNER JOIN
TableB b on b.Id = a.Id
where title like 'test'
以上是我想出的,但是我不断得到
DELETE 语句与 REFERENCE 约束冲突
我想如果我将 2 个表合并在一起,那么我将同时删除这两个表,并且不会有任何约束冲突。
我在查询中遗漏了什么吗?
尝试这个:
DELETE TableA
FROM TableA
INNER JOIN
TableB b on b.Id = TableA.Id
where TableA.title like 'test'
首先尝试TableB
使用该标题条件删除然后删除那些记录TableA
DELETE FROM TableB
WHERE Id IN
( SELECT Id FROM TableA WHERE title = 'test')
DELETE FROM TableA
WHERE title = 'test'
TableA
当您仍然有引用时,引用约束阻止您删除行TableB
我会用级联约束一个接一个地删除。