当前位置: 技术问答>java相关
!!急问一个数据库的问题,请高手指教。
来源: 互联网 发布时间:2017-04-27
本文导语: 我要用java.sql.PreParedStatment的setString()向Oracle数据库(8.1.7 GBK)的一个varchar2(4000)字段存入2000个汉字。但是Oracle的驱动程序(我用的 是classes12.zip)有限制它不能用setString(),传入长度大于2k的串。 也就是说最多可以存入长度...
我要用java.sql.PreParedStatment的setString()向Oracle数据库(8.1.7 GBK)的一个varchar2(4000)字段存入2000个汉字。但是Oracle的驱动程序(我用的
是classes12.zip)有限制它不能用setString(),传入长度大于2k的串。
也就是说最多可以存入长度为2000的英文字符(实测,可以)。对于GBK的数据库应该能存入长度为1000的汉字。然而实际上你不能存入1000个汉字,最多能存入
666个汉字,无论你的那个字段是varchar2(4000)或varchar2(1332).
因为必须用preparedStatement来做插入。请问有何办法,当然可以增加字段数
但这个方法不太好,意味着需要4个字段来做。
急啊!请高手指教。
是classes12.zip)有限制它不能用setString(),传入长度大于2k的串。
也就是说最多可以存入长度为2000的英文字符(实测,可以)。对于GBK的数据库应该能存入长度为1000的汉字。然而实际上你不能存入1000个汉字,最多能存入
666个汉字,无论你的那个字段是varchar2(4000)或varchar2(1332).
因为必须用preparedStatement来做插入。请问有何办法,当然可以增加字段数
但这个方法不太好,意味着需要4个字段来做。
急啊!请高手指教。
|
use stream.
|
既然你是大量字符数据,用clob试试吧...
|
你可以用一个带回滚的结果集合,采用结果集合上提供的插入方法插入
如果是必须用preparedStatement来做插入。就没有办法了
如果是必须用preparedStatement来做插入。就没有办法了