我没有遇到过你说的情况,一般情况下字符长度只要不超过2000应该是没问题的,对于ORACLE来说,4000的字符长度都可以,但对于客户端来说就不一定了,着要取决与你所使用的工具.
另外你能确定是ORACLE报的错吗?如果是可能是你真的超长了.具体造成超长的原因可能是存在中文字符的关系.举个例子:
对于中文字符集:
select length('实验数据') from dual;返回:4,而如果保存在VARCHAR2(4)中绝对会超长.
对于英文字符集:
select length('实验数据') from dual;返回:8
另外也可能是因为你要保存的字符串中包含了非法字符的原因.
另外你能确定是ORACLE报的错吗?如果是可能是你真的超长了.具体造成超长的原因可能是存在中文字符的关系.举个例子:
对于中文字符集:
select length('实验数据') from dual;返回:4,而如果保存在VARCHAR2(4)中绝对会超长.
对于英文字符集:
select length('实验数据') from dual;返回:8
另外也可能是因为你要保存的字符串中包含了非法字符的原因.
插入不到700个汉字就要出错,将字段由varchar2(2000)改为varchar2(4000)
, 或者是long,也一样有问题。
如果是jdbc的问题应该如何解决呢?字符串在表单通过textarea提交,
用request.getParameter()接收.