插入表oracle

问题描述

我已经创建了仅包含外键的表,它已成功创建,但是现在我正在插入表并出现错误。我所有的表在创建成功之前都可以正常工作。

这是我的代码:

insert ALL 
    INTO PRODUCT_BILLING (DeliveryID,ReturnID,ProductID,BillID) VALUES
('512','null','7113','8115')
    INTO PRODUCT_BILLING (DeliveryID,BillID) VALUES
('511','7111','8111')
    INTO PRODUCT_BILLING (DeliveryID,'8114')
    INTO PRODUCT_BILLING (DeliveryID,BillID) VALUES
('514','ret001','8113')
    INTO PRODUCT_BILLING (DeliveryID,BillID) VALUES
('516','7115','8112')
    INTO PRODUCT_BILLING (DeliveryID,BillID) VALUES
('515','ret002','7114',BillID) VALUES
('517','7112','8118')
    INTO PRODUCT_BILLING (DeliveryID,BillID) VALUES
('513','8117')
    INTO PRODUCT_BILLING (DeliveryID,'8116')
select * from DUAL;
select * from PRODUCT_BILLING;

这是我的错误:

Error starting at line : 147 in command -
insert ALL 
    INTO PRODUCT_BILLING (DeliveryID,'8116')
select * from DUAL
Error report -
ORA-02291: integrity constraint (SYSTEM.SYS_C008513) violated - parent key not found

>>Query Run In:Query Result 6

解决方法

我推测问题是'null'。这对于密钥来说似乎是非常不寻常的值。

如果需要NULL,请删除单引号。

我猜想其他值也是数字-它们肯定看起来像数字。您也应该为其删除单引号:

VALUES (512,null,7113,8115)

当然,如果值确实是字符串,请保留单引号!但是只能对字符串和日期常量使用单引号。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...