你插入的值的长度大于4000个字符,
把字段改成CLOB吧

解决方案 »

  1.   

    还有没有其他的可能???我再数据库中执行这条语句可以成功INSERT INTO CARD_INFO( CARD_ID, USER_ID ,NAME_INDEX ,BDAY ,FIRST_PHONE,GROUP_TYPE,FIRSTNAME ,LASTNAME ,ALLNAME  )  VALUES(  2437254874 , 803 , 'z' , sysdate , 1 , 1,  '张' , '二' , '张二'  )但在程序中却抱上面的错误.唯一不同的地方是我再程序中用的是
    INSERT INTO CARD_INFO( CARD_ID, USER_ID ,NAME_INDEX ,BDAY ,FIRST_PHONE,GROUP_TYPE,FIRSTNAME ,LASTNAME ,ALLNAME  )  VALUES(  ? , ? , ? , ? , ? , ?,  ? , ? , ?  )
    然后stmt.setLong(1,new Long(id).longValue());
    或者
    stmt.setString(j++,obj[i][1]);另外当我插入的FIRSTNAME ,LASTNAME ,ALLNAME 是字母,数字的话程序中也可以成功.