转载自:http://heath-derek.iteye.com/blog/257046
今天在进行oracle开发的时候遇到了一个异常,在baidu一通没有结果后,进行了google尝试,最终挖掘出了答案,哈哈。
异常: java.sql.SQLException: 数据大小超出此类型的最大值: 2017
在将过长的字符串写入数据库中时,不能直接使用setString()方法,而应该使用“流”方式写入,如下:
CharArrayReader reader = new CharArrayReader(str.toCharArray());
ps.setCharacterStream(1, reader, str.length());
(ps.setCharacterStream(1,reader)这种写法时遇到了另外一个异常
java.lang.AbstractMethodError: oracle.jdbc.driver.OraclePreparedStatement.setCharacterStream(ILjava/io/Reader;)V 琢磨半天,不晓得为何,如果各位有知道的,请积极帮解答(*^__^*) 嘻嘻……
)
至于读,可以使用普通的方式读取,不会出现异常。
分享到:
相关推荐
例如,NUMBER(5,2) 最大值为 99,999,超出范围的数据会被截断。NUMBER(3,0) 表示不包含小数的三位数字。 4. DATE: 日期时间类型,涵盖公元前 4712 年至公元 4712 年的所有日期,包括小时、分钟和秒。默认格式为 DD-...
- **缓存大小计算**:一旦 SQL 语句被解析,所有列的数据类型都会被明确下来,因此可以计算出每列的最大可能内存量。结合 fetchSize 的值,就可以估算出总的内存占用量。 ##### 2.3 特殊类型处理 对于 LONG 或者 ...
在描述中提到的错误信息 "Packet for query is too large (11087 > 102)" 指明了问题的具体情况,即数据包的大小(11087字节)超出了MySQL默认允许的最大值102字节。 这个问题通常发生在以下几种情况: 1. **大数据...
11. **maxIdle**:最大空闲连接数,超出此数的连接会被释放。 12. **minIdle**:最小空闲连接数,低于这个数量时,连接池会创建新连接。 13. **maxWait**:当没有可用连接时,等待连接归还的最大时间,如果超过这...
- **重要性**:事务隔离级别对于确保数据一致性至关重要,因此根据具体的应用需求正确设置此参数非常重要。 #### 11. `cacheState` - **参数描述**:表示是否缓存连接的自动提交和只读状态。 - **缺省值**:通常为`...