今天给各位分享java保存clob类型字段的知识,其中也会对数据库clob类型的字段怎么取进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、java 存储clob字段2、数据库CLOB型字段是什么数据类型?3、java 处理 oracle clob类型 字段4、java 怎么保存Clob对象
java 存储clob字段
不可以使用update Test 语法来更新。
PreparedStatement pstat=conn.prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
ResultSet rs1 = pstat.executeQuery();
rs1.moveToInsertRow();
rs1.updateBlob(1, in, file.length() );
rs1.updateInt(2, 1);
rs1.insertRow();
in.close();
rs1.close();
pstat.close();
新增的方法,其实,修改也相似。
数据库CLOB型字段是什么数据类型?
SQL CLOB为内置类型,它将字符大对象(Character Large Object)存储为数据库表某一行中的一个列值。
默认情况下,驱动程序使用SQL locator(CLOB)实现Clob对象,这意味着CLOB对象包含一个指向SQL CLOB数据的逻辑指针而不是数据本身。Clob对象在它被创建的事务处理期间有效。
内置类型指任何语言在设计初期定义的类型,如c语言中的int,double, char,它也是在一种语言中最基本的类型,与编译器编译出的代码具有重大关系。
扩展资料
JAVA里面对CLOB的操作
在绝大多数情况下,使用2种方法使用CLOB
1、相对比较小的,可以用String进行直接操作,把CLOB看成字符串类型即可。
2、如果比较大,可以用getAsciiStream或者getUnicodeStream以及对应的setAsciiStream和 setUnicodeStream即可。
在一些数据库系统里,也使用Text作为CLOB的别名,比如SQL Server。
参考资料来源:百度百科-CLOB
参考资料来源:百度百科-内置类型
java 处理 oracle clob类型 字段
猪哥解答:
呵呵,从你的代码里没看出大问题,你遇到的那个问题出现的情况通常是:在事务里的不同地方对同一个表的同一条数据进行update操作。
而解决的方式一般是两条update合并成1条,或者强制设定事务的隔离级别,你这个代码不完整,我也不知道该给你往哪里加东西。
不过有一个小问题你得先调整一下:
Writer outstream = clob.getCharacterOutputStream();
if (content != null) {
// outstream.write(content);
outstream.write(content.toCharArray(),0,content.toCharArray().length);
outstream.flush();
outstream.close();
}
你的这段代理里这句话Writer outstream = clob.getCharacterOutputStream();应该拿到if(content!=null)里面,按照你原来的写法,如果那个if条件不满足,那么这个输出流就不会关闭了,这个也许是引起问题的关键吧。
如果不行的话,你就把完整的代码贴上吧,你这个异常要看整个事务是怎么写的。
java 怎么保存Clob对象
数据库查询出来
CLOB clob = (oracle.sql.CLOB)rs.getClob(i);
String sBlob = ClobToString(clob);
row.put(strFieldName, sBlob);
//—————
/**
*
* 功能:(将clob类型的数据转换为string)
*
* @Title: ClobToString
* @Date: 0521, 2012 17:10:52 PM
* @param clob
* @return string
*/
public String ClobToString(CLOB clob) throws SQLException, IOException {
String reString = “”;
Reader is = clob.getCharacterStream();// 得到流
BufferedReader br = new BufferedReader(is);
String s = br.readLine();
StringBuffer sb = new StringBuffer();
while (s != null) {// 执行循环将字符串全部取出付值给StringBuffer由StringBuffer转成STRING
sb.append(s);
s = br.readLine();
}
reString = sb.toString();
return reString;
}
关于java保存clob类型字段和数据库clob类型的字段怎么取的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。