ORA-01400: 无法将 NULL 插入 ("CHARGE_WQRL"."SF_JMQTFY_T"."BH")
2017-09-17 18:39
330 查看
[ERROR] JmCheckManageDaoImpl:901 - java.sql.SQLException: ORA-01400: 无法将 NULL 插入 ("CHARGE_WQRL"."SF_JMQTFY_T"."BH")
这个问题很多时候是没有为该表建立触发器(trigger)导致的,或者是序列(sequence)没建立,查看一下,确保两个都要有。
这是建立sequence
建立trigger
附:出现问题的存储过程,可以看到SF_JMJC_T的BH是声明了的,直接从序列获取,而SF_JMQTFY_T的BH是没有声明的,如果不使用触发器调用是无法赋值的。
这个问题很多时候是没有为该表建立触发器(trigger)导致的,或者是序列(sequence)没建立,查看一下,确保两个都要有。
这是建立sequence
create sequence SF_JMQTFY_S minvalue 1 maxvalue 999999999999999999999999999 start with 1 increment by 1 cache 20;
建立trigger
CREATE OR REPLACE TRIGGER "CHARGE_WQRL"."SF_JMQTFY_TR" BEFORE INSERT ON SF_JMQTFY_T FOR EACH ROW DECLARE BEGIN SELECT SF_JMQTFY_S.NEXTVAL INTO :NEW.BH FROM DUAL; END;
附:出现问题的存储过程,可以看到SF_JMJC_T的BH是声明了的,直接从序列获取,而SF_JMQTFY_T的BH是没有声明的,如果不使用触发器调用是无法赋值的。
--设置稽查表的sequence SELECT SF_JMJC_S.NEXTVAL INTO V_BH FROM DUAL; --稽查表插入信息 INSERT INTO SF_JMJC_T (BH, CNQ, YHBH, JCDZ, YRSJ, YSFMJ, SFMJ, YGNZT, GNZT, YSFLB, SFLB, CLJG, JCR, JCRQ, WYJ, CZY, BZ,QFJE) VALUES (V_BH, V_CNQ, V_YHBH, V_JCDZ, V_YRSJ, V_YSFMJ, V_SFMJ, V_YGNZT, V_GNZT, V_YSFLB, V_SFLB, V_CLJG, V_JCR, V_JCRQ, V_WYJ, V_CZY, V_BZ,V_WYJ); --其他费用表插入信息(违约金>0时将其插入欠费金额) IF V_WYJ >= 0 THEN INSERT INTO SF_JMQTFY_T (CNQ, YHBH, FYBH, YSJE, QFJE, FYLB,YWBH) VALUES (V_CNQ, V_YHBH, 0, V_WYJ, V_WYJ, '违约金',V_BH); END IF;
相关文章推荐
- 出现错误:批处理中出现错误: ORA-01400: 无法将 NULL 插入 ("xxxxx"."PERSONALIZED"."ASID")
- ORA-01400: 无法将 NULL 插入 ("S01"."A02_EMPLOYEES"."ID") 错误
- java.sql.SQLException: ORA-01400: 无法将 NULL 插入 ("LVJIAN"."T_ITEMS"."ITEM_NAME")
- oracle错误(二) ORA-01400: 无法将 NULL 插入 ("SL"."TEMP_TEST_TABLE"."ID")的解决方案
- java.sql.SQLIntegrityConstraintViolationException: ORA-01400: 无法将 NULL 插入 (表)
- ORA-01400: 无法将 NULL 插入 可能有的错误
- ora-01400 无法将NULL插入 ID 解决方法
- 其他信息: ORA-01400: 无法将 NULL 插入
- 创建sequence和trigger ORA-01400: 无法将 NULL 插入
- ORA-04031: 无法分配 12519000 字节的共享内存 ("large pool","unknown object","hash-join subh","kllcqc:kllcqslt")
- 无法初始化链接服务器 "(null)" 的 OLE DB 访问接口
- Eclipse无法启动报An internal error occurred during: "reload maven project". java.lang.NullPointerExceptio
- ORA-12840: 在并行/插入直接加载 txn 之后无法访问远程表
- sqlplus链接成功,PL/SQL报错:“ORA-12154: TNS:无法解析指定的连接标识符"
- 执行"SET NAMES utf8"后仍然无法插入中文的原因
- 无法初始化链接服务器 "(null)" 的 OLE DB 访问接口
- "ora-12154 无法解析指定的连接标识符"问题的解决
- Oracle报错:"ORA-18008: 无法找到 OUTLN 方案 "的解决方案
- SQL SERVER访问Access数据库,出现错误:无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 的数据源对象