删数据ORA-02292主键约束问题

通常在删除某个表A的时候,会出现这个错误。原因是另一个表B的某个字段引用了A表的某个字段作为约束(这个的另一个说法是外键)。

假如引用的字段叫field,当B.field = A.field , 而你想删掉A.field,这时就爆出这个错误。解决办法是先把B.field (B.field = A.field的部分) 干掉,再干掉你想删除的A.field

问题是,如何知道哪个表引用了A表的field字段或其他字段?报错信息里并没有给出,只给出了约束的名称。这时可以查all_constraints。

select  table_name from all_constraints where constraint_name = '约束的名称' (一般如 FK_xxx)

查看选出的table_name 就知道索引了A的哪个字段。

原文地址:https://www.cnblogs.com/52wxb1314/p/10972333.html