代码如下:
.....
st = conn.prepareStatement(sql);
st.setInt(1, Integer.parseInt(mailId));
st.setString(2, mailTitle);
Reader clobReader = new StringReader(mailContent);
st.setCharacterStream(3, clobReader, mailContent.length());
st.executeUpdate(); ---------当mailContent长度大于4000多时,这里执行就会报错
}catch(Exception e){
e.printStackTrace();
throw new Exception("插入clob报错!\n" + e.getMessage());
.....java.sql.SQLException: No more data to read from socket
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:1160)
at oracle.jdbc.ttc7.MAREngine.unmarshalUB1(MAREngine.java:962)
at oracle.jdbc.ttc7.MAREngine.unmarshalSB1(MAREngine.java:894)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:383)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1973)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1119)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2191)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2064)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2989)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:658)
at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:335)
.....
st = conn.prepareStatement(sql);
st.setInt(1, Integer.parseInt(mailId));
st.setString(2, mailTitle);
Reader clobReader = new StringReader(mailContent);
st.setCharacterStream(3, clobReader, mailContent.length());
st.executeUpdate(); ---------当mailContent长度大于4000多时,这里执行就会报错
}catch(Exception e){
e.printStackTrace();
throw new Exception("插入clob报错!\n" + e.getMessage());
.....java.sql.SQLException: No more data to read from socket
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:1160)
at oracle.jdbc.ttc7.MAREngine.unmarshalUB1(MAREngine.java:962)
at oracle.jdbc.ttc7.MAREngine.unmarshalSB1(MAREngine.java:894)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:383)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1973)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1119)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2191)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2064)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2989)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:658)
at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:335)
解决方案 »
- JTree怎么使用系统图标?
- 使用插件!
- 这是我照张孝祥老师书上打的代码,怎么有错误 ,为怎么老是提到字符不存在,怎么改!
- 加拿大.达内外企It培训怎么样
- 如何通过java反射机制将字符串转换为任意一种数据类型的对像?
- 把byte[]存放到SQLSERVER的image类型字段如何写?
- 关于如何得到文件保存路径的问题???
- JDBC-ODBC连SQL 2000时出错
- 请问使用java如何虚拟键盘操作,如虚拟按下按钮delete键或print键
- 如何将TOMCAT作为WINDOWS 的服务?
- 这个非阻塞方式下载网页,为什么无法下载到网页源代码
- SocketException: Unexpected end of file from server这个异常时怎么回事
本文来自: 中国网管联盟(bitsCN.com) 详细出处参考:http://www.bitscn.com/oracle/base/200804/136996.html
再大了还是用ls的建议用blob吧