我有一个Access数据库,我希望使用其对另一个表的引用属性从表中删除记录。例如,我有以下两个表格;
CI_Aliases with fields - CI_Ref(Primary Key),值为3 和Aliase_ID(外键),值为5
使用字段的Aliases_Table - Aliase_ID(主键),值为5 和Aliase的值为" AMSS"
我已经尝试了以下DELETE语句,但是我收到了消息"无法从指定的表中删除记录" - 我做错了什么?
DELETE FROM Aliases_Table a
INNER JOIN CI_Aliases c
ON a.Aliase_ID = c.Aliase_ID
WHERE c.CI_Ref = 3
我应该确认它是Aliases_Table中的记录,我希望删除但是使用" 3"的CI_Aliase主键。
答案 0 :(得分:0)
首先使用别名,然后使用FROM子句。语法有点不直观
DELETE a.*
FROM Aliases_Table a
WHERE a.Aliase_ID IN (
SELECT
c.Aliase_ID
FROM CI_Aliases c
WHERE c.CI_Ref = 3
)