把String存入Oracle表中的Blob类型的列?

把String存入Oracle表中的Blob类型的列?

问题描述:


用java实现怎么做?是String字符串,不是图片或者文件。我试过几个方法,但是老师出现空指针异常。
本人才疏学浅,望有才子指点。感激。

先插入一个空blob 然后再打开这个空的blob用out流往里面写。
[code="java"]
String sql = "insert into TEST values('1','xxx',EMPTY_BLOB())";

[/code]
[code="java"]
rs = stm.executeQuery("SELECT img FROM TEST WHERE id='1' FOR UPDATE ");
[/code]
[code="java"]
if(rs.next()) {

System.out.println(blobBuf.length);//以byte为单位

blob = (oracle.sql.BLOB)rs.getBlob(1);

out = blob.getBinaryOutputStream();

out.write("xxx".getBytes());//写入到BLOB中去

out.close();

conn.commit();

}

[/code]

http://school.ogdev.net/ArticleShow.asp?id=6250&categoryid=20
这里有现成的例子 自己研读下吧

把异常信息和代码都贴出来。