17,377
社区成员
发帖
与我相关
我的任务
分享
pst=(OraclePreparedStatement)conn.prepareStatement("select contents from test where .... for update");
java.sql.ResultSet rs=pst.executeQuery();
oracle.sql.BLOB c=null;
if (rs.next()){
c=(oracle.sql.BLOB)rs.getBlob(1);
}
pst.close();
rs.close(); //是否可以关闭呢?
//3)更新内容
java.io.OutputStream writer;
byte[] cbuf=new byte[BufLen];
writer=c.setBinaryStream(1L);
Integer offset=Integer.valueOf(0);
Integer iRead;
iRead=fr.read(cbuf,offset,BufLen);
while (iRead.compareTo(-1)!=0){
//writer.write(cbuf);
writer.write(cbuf,0, iRead);
iRead=fr.read(cbuf,offset,BufLen);
}
writer.flush();
writer.close();
pst=(OraclePreparedStatement)conn.prepareStatement("update test set contents=? where ....");
pst.setBLOB(1, c);
pst.executeUpdate();