我正在尝试从(3)表中删除基于主键的1条记录。
以下是我正在使用的声明
DELETE FROM CUSTOMER
WHERE EXISTS
( SELECT MERCHANTNAME
FROM CREDITCARD
WHERE MERCHANTNAME = 'VISA');
使用客户表中的VISA删除客户记录。
这是我得到的错误
ORA-02292:完整性约束 违反了(PLATINUMAUTOGROUP.CDRIVERLICENSENUM_FK) - 找到了儿童记录
我猜CDRIVERLICENSENUM
是我拥有的第3张表中的外键。我该怎么做?是否可以在1个语句中从3个表中删除1个记录?
这三个表是
customer / customer_creditcard / creditcard
答案 0 :(得分:0)
在删除主表中的记录之前,您需要删除foreing表中的记录。
但也许你在CUSTOMER表中的删除命令可能是错误的,因为如果EXISTS命令返回true,所有记录都将从CUSTOMER表中删除。检查这是否是您期望的结果。