说明在not null的字段里插入了null,最好的办法就是检查一下传入的值,如果为空,就把其赋为0

解决方案 »

  1.   

    alter table T_newjb9tmp modify rq_year 你原来的rq_year
    类型 null;
      

  2.   

    insert into T_newjb9tmp(rq_year,rq_month,xm1,xm2,jx,
         dx_js,dx_js_add,dx_rs,dx_pj,dx_zzxglhj,dx_zzxglpj,dx_yc,dx_bz,
         zx_js,zx_js_add,zx_rs,zx_pj,zx_zzxglhj,zx_zzxglpj,zx_yc,zx_bz,
         xx_js,xx_js_add,xx_rs,xx_pj,xx_zzxglhj,xx_zzxglpj,xx_yc,xx_bz,
         fx_js,fx_js_add,fx_rs,fx_pj,fx_zzxglhj,fx_zzxglpj,fx_yc,fx_bz,
         wx_dxll,wx_dxlw,wx_zxll,wx_zxlw,wx_xxll,wx_xxlw,zzxgl,jwd) 
      select nvl(a_rq_year,0),nvl(a_month,0),a.code,b.code,'',
            0,0,0,0,0,0,0,0,        0,0,0,0,0,0,0,0,
            0,0,0,0,0,0,0,0,        0,0,0,0,0,0,0,0,        0,0,0,0,0,0,0,a_code
      from NewJb9xm1dict a,NewJb9xm2dict b 
      where a.code not in ('0001','0002');