SQL语句如下:
  insert into rmwjb(SERIALNO,SM,WJNR,fs) values (:ll_maxsn,:is_bt,:is_wjnr,:ii_fs);————————————————————————————  当变量ls_wjnr大于一定长度后(2988),无法执行插入操作,如何解决这个问题?

解决方案 »

  1.   


        wjnr为 Vchar2 ,2000
      

  2.   


    wjnr为 Vchar2 ,2000---------------------------
    是你的字段长度定义的小了试试把wjnr定义为 varchar2(4000),再执行一下SQL:
    insert into rmwjb(SERIALNO,SM,WJNR,fs) values (:ll_maxsn,:is_bt,:is_wjnr,:ii_fs); 
      

  3.   

    alter table rmwjb modify jwnr varchar2(4000);
      

  4.   


    正解啊,但是为什么varchar2(2000)应该是最大是2000个汉字啊,为什么会在>2988呢才会报错呢?
      

  5.   

    2988插入2000当然不行了
    就按楼上的方法
    把jwnr 字段属性改一下
      

  6.   


    ——————————————————————————————  如果要导入的字符串长度大于4000的话,如何处理?CLOB
      

  7.   


      按照jdsnhan的方法,问题已经初步解决,打开表显示字段内容已经全部插入。  但是在PB数据窗口中,wjnr列为编辑框,将edit.limit设定为4000之后,仍然无法显示该字段所有内容。  何故?
      

  8.   

    varchar2 类型在9i里支持最大4000个byte;
      

  9.   

    使用clob类型或者用varchar2(8000)
      

  10.   

    使用clob类型或者用varchar2(4000)
      

  11.   


    ——————————————————————  这个“varchar2(8000)”能用吗?请问,varchar2(****)中,*最大值可取多少?