日期:2014-05-16  浏览次数:20399 次

Clob 使用总结(SQL Server/Oracle/Hibernate/JDBC)
1、使用了Oracle10g的JDBC、 SQL Server的jTds JDBC驱动程序后, 对Clob字段的操作,可以用String代替。“在HBM映射文件中对应clob字段的使用type="text"类型,Java持久对象对应clob字段的定义为String"

2、从SQL Server2005开始,扩展了varchar,nvarchar AND binary的存储容量至2G,所以我们可以使用Varchar(max),nvarchar(max) AND varbinary(max)来取代text,ntext AND image;由于是从varchar,nvarchar AND binary进行的扩展,所以我们可以使用在SQL Server 2000中对这几种数据类型可以使用的所有函数,比如replace,upper,lower,substring.......这样我们进行许多操作时就非常有用。

3、虽然SQL Server 2000的varchar类型最大可以设置为8000,但是,或许是由于JDBC的限制,如果实际插入的字段长度超过3000(?),那么会有“java.sql.SQLException: 不允许从数据类型 ntext 到数据类型 varchar 的隐性转换(表 'XXX',列 'content')。请使用 CONVERT 函数来运行此查询。”的异常抛出。
所以,SQL Server2000定义varchar(8000)+jdbc,是没有意义的,因为根本无法插入这么长的字段,只有用Text这样的clob字段来定义数据库