Chinaunix

标题: 往数据库差入超长字符串问题。。。 [打印本页]

作者: smallred    时间: 2003-08-06 11:22
标题: 往数据库差入超长字符串问题。。。
数据库用的是oracle9,我需要把》2000字符的字符串插入表,开始字段用的long型

ps.setCharacterStream把超过2000字符的Reader插入long型字段
系统报数据大小超出此类型的最大值: 12363

不知道为什么,后来改用CLOB还是不行
其中字符串是大于》2000字符
byte[] tempByte = recordList[lineNumber].substring(304).trim().getBytes();
ps.setObject(5, tempByte);

还是报错阿

java.sql.SQLException: 数据大小超出此类型的最大值: 8242

at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)

at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)

at oracle.jdbc.ttc7.TTCItem.setArrayData(TTCItem.java:95)

at oracle.jdbc.dbaccess.DBDataSetImpl.setBytesBindItem(DBDataSetImpl.java:2414)

at oracle.jdbc.driver.OraclePreparedStatement.setItem(OraclePreparedStatement.java:1134)

at oracle.jdbc.driver.OraclePreparedStatement.setBytes(OraclePreparedStatement.java:2170)

at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:2823)

at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:3015)

at com.content.monitor.RecordImport.DetailInsert(RecordImport.java:52)

at com.content.monitor.ConDetail.recordInsert(ConDetail.java:371)

at com.content.monitor.ConDetail.detailManager(ConDetail.java:216)

at com.content.monitor.ConMonitor.excute(ConMonitor.java:102)

at com.content.monitor.ConMonitor.run(ConMonitor.java:3

at java.lang.Thread.run(Thread.java:536)

我看了,字段位置什么的肯定没有错误,不知道是什么原因。。还需要什么设置吗?




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2