用的是oracle中插入的是空,就想给他一个默认的值,“0”。 里面的数据很多有20多个,所以不可能一个一个默认,所以不知道有没有sql语句。 我用的sql语句处理用的是ibatis。 
INSERT INTO COM_APPOINTMENT_C 
(app_cd, app_nm, pay_cl, dep_yn, pos_yn, dut_yn, ocp_yn, rol_yn, 
cls_yn, inc_yn, ret_yn, app_yn, sal_yn, dsp_yn, sus_yn, ccr_yn, 
cre_no, cre_dt, chg_no, chg_dt) 
values 
(#appCd#, #appNm#, #payCl#, #depYn#, #posYn#, #dutYn#, #ocpYn#, 
#rolYn#, #clsYn#, #incYn#, #retYn#, #appYn#, #salYn#, #dspYn#, 
#susYn#, #ccrYn#, '111', sysdate, '1111', sysdate) 例如这条sql语句,字段有空的就给它默认是'0'
不能去更改数据库建表的语句..

解决方案 »

  1.   

    你的意思是表结构不变的情况下,在INSERT语句中,如果某字段为空就给这个字段一个默认值是吧?是全部字段还是具体哪个字段?
      

  2.   

    不修建create table的语句的话,就可以用触发器。
      

  3.   

    要么就是修改你的insert语句,用上nvl函数。
      

  4.   

    INSERT INTO COM_APPOINTMENT_C 
    (app_cd) 
    values 
    (nvl(我是变量,0))。
      

  5.   

    nvl(我是变量,0)是一个函数,如果前面那个参数是null的话就用后面的值代替。另外你也可以在程序里判断,是空的话赋0就可以了。