再问Oracle Blob 的数据库插入操作 stmt = conn.getPreparedStmt(strSql,ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_UPDATABLE); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我只接用的是update 这不行吗?why ? sql = "update table1 set content = ? where obj_id = 1"; ps=con.prepareStatement(sql,ResultSet.TYPE_SCROLL_SENSITIVE ,ResultSet.CONCUR_UPDATABLE ); ps.setCharacterStream(1 ,fileReader,100000) ;// ps.executeUpdate() ;我的是sqlserver . 这样是完全可以的... 我的是sqlserver里的ntext字段...具体到你的oracle 的blob字段.你自己多试验吧... 我的情况与你的差不多,我是存图片,大于4000byte的东西就存不进去!方法基本相同! 怀疑是jdbc的问题,可能用流不行,看看下面的代码是否有帮助/** *从数据库获得BLOB字段句炳 */ private OutputStream getOutputStream(Connection cn,long ID) throws Exception{ PreparedStatement st = null; OutputStream out = null; ResultSet rest = null; try{ String sql = "select content from imagelib where id="+ID; st = cn.prepareStatement(sql); rest = st.executeQuery(); if(rest.next()){ Blob blob = rest.getBlob(1); //获得 blob 对象句柄 OutputStream blobOs = ((oracle.sql.BLOB)blob).getBinaryOutputStream(); return blobOs; } else return null; }catch(Exception e){throw e;} finally{ try{ if(st!=null){ st.close(); st = null; } }catch(Exception e){e.printStackTrace(System.out);} } }/** *图片内容入库 */ private void saveContent(Connection cn,Picture picture) throws Exception{ try{ OutputStream blobOs = getOutputStream(cn,picture.ID); blobOs.write(picture.content); //内容写入blob,这里picture.content是一个byte[] blobOs.close(); }catch(Exception e){throw e;} } jquery中,不管选择下拉列表哪一项,返回的值都是第一项的value值 tomcat 崩溃掉,求高手支个招,是不是配置有问题 运行问题 请教一个java web 启动服务问题? jsp上传文件有几种办法啊,最经典的是那中,最简单的是那种 求JAVA帮助 急!!怎样得到table中td上面的属性?如:rowspan jdk 简单问题,解决就给分 ============================ 请问下servlet里面Cookie和Session区别! 各位大侠!!赶紧帮帮我啊,我要疯了!!!!!!!! 老生常谈,仍然是乱码问题
ps=con.prepareStatement(sql,ResultSet.TYPE_SCROLL_SENSITIVE ,ResultSet.CONCUR_UPDATABLE );
ps.setCharacterStream(1 ,fileReader,100000) ;//
ps.executeUpdate() ;我的是sqlserver . 这样是完全可以的...
具体到你的oracle 的blob字段.你自己多试验吧...
*从数据库获得BLOB字段句炳
*/
private OutputStream getOutputStream(Connection cn,long ID) throws Exception{
PreparedStatement st = null;
OutputStream out = null;
ResultSet rest = null;
try{
String sql = "select content from imagelib where id="+ID;
st = cn.prepareStatement(sql);
rest = st.executeQuery();
if(rest.next()){
Blob blob = rest.getBlob(1); //获得 blob 对象句柄
OutputStream blobOs = ((oracle.sql.BLOB)blob).getBinaryOutputStream();
return blobOs;
}
else return null;
}catch(Exception e){throw e;}
finally{
try{
if(st!=null){
st.close();
st = null;
}
}catch(Exception e){e.printStackTrace(System.out);}
}
}/**
*图片内容入库
*/
private void saveContent(Connection cn,Picture picture) throws Exception{
try{
OutputStream blobOs = getOutputStream(cn,picture.ID);
blobOs.write(picture.content); //内容写入blob,这里picture.content是一个byte[]
blobOs.close();
}catch(Exception e){throw e;}
}