4

如何从两个单独的表中删除一行?我认为可以使用内部连接来做到这一点

DELETE a.*, b.* FROM Holiday INNER JOIN Accommodation b on a.LocationID = b.LocationID

在这里,我尝试通过将第一个表中的主键位置与第二个表中的位置 id 匹配来删除。我得到一个 SQL 异常“sqlException near a”

我在 SQLITE,java 中这样做

在此处输入图像描述

4

1 回答 1

7

在 SQLite 中,一个DELETE命令只从一张表中删除。

您的查询,如所写,实际上并没有限制要删除的记录,所以如果你真的想删除所有记录,你会使用这个:

DELETE FROM Holiday;
DELETE FROM Accommodation;

如果要删除主表中的一条记录和子表中的所有对应记录,只需按该键值过滤:

DELETE FROM Holiday       WHERE LocationID = 1;
DELETE FROM Accommodation WHERE LocationID = 1;
于 2013-02-10T22:04:12.687 回答