zoukankan      html  css  js  c++  java
  • ora-01400 无法将NULL插入 ID 解决方法

    问题描述:由于工作原因,把部分 字段改了,大体这样

    1 StatementCallback; uncategorized SQLException for SQL
    2  [insert into test(schoolId,classId,teacherId,weekId,serialno,name) values(28529,23402,328717,7,8,'')]; 
    3  SQL state [null]; error code [17081]; 批处理中出现错误: ORA-01400: 无法将 NULL 插入 ("XXX"."test"."ID")
    4 ; nested exception is java.sql.BatchUpdateException: 批处理中出现错误: ORA-01400: 无法将 NULL 插入 ("ORAL"."test"."ID")
    5  -(:71)

    这个问题很多时候是没有为该表建立触发器导致的,或者是sequence没建立,或者是trigger没建立。

    建立其中一个或两个即可。

    这是建立sequence

     1 create sequence TEST_SEQ
     2 
     3 minvalue 1
     4 
     5 maxvalue 999999999999999999999999999
     6 
     7 start with 1
     8 
     9 increment by 1
    10 
    11 cache 20;

    这是建立trigger的

     CREATE OR REPLACE TRIGGER " TEST_TRI" BEFORE
    
            INSERT ON TEST
    
            FOR EACH ROW       
    
    BEGIN
    
              SELECT test_seq.NEXTVAL INTO :NEW.ID FROM DUAL;
    
            END;
  • 相关阅读:
    日志模块
    DDT数据驱动
    unittest测试框架
    vim编辑器
    文件夹的管理
    文件内容查看(如查看日志)
    文件的移动和拷贝
    文件的增删改查
    linux基本命令
    测试5--模拟一个在控制台不断按时分秒打印的电子表
  • 原文地址:https://www.cnblogs.com/newlooker/p/3631177.html
Copyright © 2011-2022 走看看