ORA-01400:无法将NULL插入PK IN Oracle

时间:2019-01-30 08:46:46

标签: oracle12c ora-01400

我正在使用Oracle 12c。 将其放入存储过程后,我无法执行存储过程,它引发了如下ORA-01400错误:

ORA-01400:无法将NULL插入(“ PRODUCT”。“ My_table”。“ ID”)

*原因:试图将NULL插入先前列出的对象中。

*操作:这些对象不能接受NULL值。

但是当我取出它并执行insert语句时,它就起作用了。有人可以帮我解释一下吗?

将我的代码放在SP中:

    $agreement = new Agreement();
    try {       
        $agreement->execute($token, $this->apiContext);
     } catch (PayPal\Exception\PayPalConnectionException $ex) {
        echo $ex->getCode(); // Prints the Error Code
        echo $ex->getData(); // Prints the detailed error message 
        die($ex);
    } catch (Exception $ex) {
        die($ex);
    }

这是我的脚本创建表

BEGIN

  INSERT INTO Product.My_table(Code,time,sub,date,owner,type)
  SELECT Code ,time,sub,SYSTIMESTAMP,p_UpdateBy,1 FROM Product.My_table2 WHERE ACTIVE=1
  AND Code NOT IN(SELECT time FROM Product.My_table P WHERE sub = v_ID AND Type=1)
  ORDER BY Code ASC;

    COMMIT;
END;

谢谢。

0 个答案:

没有答案