varchar2能设置到4000吗? CLOB才4000长度

解决方案 »

  1.   

    还有, 不同字符集, 中文占用字节数是不同的.在GBK里中文占2个字节, 在UTF-8和UTF16AL32里, 中文占3个字节
      

  2.   

    700多个字是没有问题的,顶多是LENGTHB  就是1600,还远远没有达到4000呢
      

  3.   

    不知道楼主用的什么语言和驱动
    根据oracle的文档,thin的jdbc驱动,会根据字符集合决定varchar2的长度,如果不是ascii或者拉丁字符集合,长度的限制就是2000,因为它认为其他字符集都需要两个字节来存储,但是通过jdbc的setString方法时候,驱动会把java的utf-16转换为utf-8,这样英文由两个字节变成一个字节,中文由两个字节变为3个字节,所以2000/3大概就是666个中文字符了。
      

  4.   

    wully(吃木头长大) 说得真好
      

  5.   

    wully(吃木头长大)    正解