项目测试过程发现,公司测试无问题,客户测试报错,经过现场分析,发现为plsql中编写批量插入语句,
没有明确指明表的字段导致。
因为客户端数据表的字段顺序和公司数据库表字段顺序不一致导致。
-1400- 位置=,ORA-01400: cannot insert NULL into ("PMSDATA"."TFZ_GRADE_DETAIL_REC_HIS"."SCORE") stpb_id=3901430
原因:公司tfz_grade_detail_rec_his字段的顺序和平安不一致,导致不能插入正确值。
insert into tfz_grade_detail_rec_his
select v_id,
x.grin_id,
x.supply_id,
x.user_id,
x.score,
x.remark,
sysdate
from tfz_grade_user_result x
where x.stpb_id = i_stpb_id
and x.stpr_id = i_stpr_id
and x.bundle_code = i_bundle_code
and x.user_id = v.user_id;
公司
batch_id NUMBER(9) not null,
grin_id NUMBER(9) not null,
supply_id NUMBER(9) not null,
user_id NUMBER(9) not null,
score NUMBER(5,2) not null,
remark VARCHAR2(4000),
cdate DATE default sysdate not null
平安
(
BATCH_ID NUMBER(9) not null,
GRIN_ID NUMBER(9) not null,
SUPPLY_ID NUMBER(9) not null,
USER_ID NUMBER(9) not null,
REMARK VARCHAR2(4000),
SCORE NUMBER(5,2) not null,
CDATE DATE default sysdate not null
)
更改:
insert into tfz_grade_detail_rec_his
(batch_id,grin_id,supply_id,user_id,score,remark,cdate)
select v_id,
x.grin_id,
x.supply_id,
x.user_id,
x.score,
x.remark,
sysdate
from tfz_grade_user_result x
where x.stpb_id = i_stpb_id
and x.stpr_id = i_stpr_id
and x.bundle_code = i_bundle_code
and x.user_id = v.user_id;
指明要插入的表字段,是个好习惯,更规范。
深入分析:
导致公司和客户端表字段顺序不一致的原因是tfz_grade_detail_rec_his表之前已经客户数据库中,通过后续ddl更改,导致
表字段两边顺序不一致。因此如果对原始表更改较大,或许先drop掉重新建表会好点。
分享到:
相关推荐
SQL语句编写好工具 大家用用觉得怎么样的 谢谢大家的支持哈
ORACLE数据库SQL语句编写优化总结
sql语句编写.md
可以在写sql语句时,有相应的提升信息,有利于你的快速开发能力
SQL语句编写优化和基本原理总结,共有多达20多个点。
1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c.... 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_...
最全JAVA编写规范 1. 关键词和操作符之间加适当的空格。 2. 相对独立的程序块与块之间加空行 3. 较长的语句、表达式等要分成多行书写。4. 划分出的新行要进行适应的缩进,使排版整齐,语句可读。 5. 长表达式要在低...
使用SQL语句编写各种图形 如直角三角形,正方形,梯形.....
EXPLAIN PLAN是一个很好的分析SQL语句的工具,它可以在不执行SQL的情况下分析语句 通过分析,我们就可以知道ORACLE是怎样连接表,使用什么方式扫描表(索引扫描或全表扫描),以及使用到的索引名称 按照...
switch 语句的写法 简单的一个代码,简述java语言switch、语句的编写
ORACLE数据库SQL语句编写优化
ORACLE数据库SQL语句编写优化总结文档
方便VB开发者编写语句
用javaeclipse运行的程序 用java语句编写的 QQ程序
微型Sql Server查询分析器、数据库比较工具,SQL语句编写助手
SQL语句的良好编写方法,挺不错的吧,拿出来与大家分享!
ORACLE数据库SQL语句编写优化总结
实用编程经验。指导如何写出高效率SQL语句。
ORACLE数据库SQL语句编写优化总结.doc