首页 > 解决方案 > Oracle ORA-2291 未找到父键

问题描述

我用我的 Oracle 表解决了一个问题,但出现了另一个问题。它是 ORA-2291。我有两张桌子。第一张表:

ID - 编号,描述 - NVarchar(150),文件名 - NVarchar(150),二进制 - BLOB,缩略图 - BLOB,ORD - 编号,ID_ITEMS - 编号。

第二个表 - ID - 编号,名称 - NVarchar(60),Desc_term - NVArchar(200),ID_Description 编号

我在两个 id 上都设置了主键。我也做了前键..从 ID_ITEMS 到第二个表中的 ID。问题是,当我想将图像插入数据库时​​,它会显示 - ORA 02291。有什么提示吗?:/

标签: oracle

解决方案


ORA-2291 未找到父键

-> 未找到父密钥意味着您在不存在父密钥的地方插入了密钥。使用您提供的少量信息,我猜您想在表 1 中插入一条记录,其值为Xcolumn ID_ITEMS。但是在外键链接的表中没有对应的元素,表 2。在表 2 中,您需要为X每个ID_ITEMS

insert into table2 (ID)
values (1337);
insert into table1 (ID, ID_ITEMS)
values(12321(random id), 1337);
-->WORKS


insert into table1 (ID, ID_ITEMS)
values(12322(random id), 1338); -->Error ORA-2291 Parent key not found
insert into table2 (ID)
values (1338);
-->DOESNT WORK

您需要先插入父键,如错误消息中所述。


推荐阅读