如何在JAVA中对ORACLE数据库的BLOB形的数据库字段进行修改????(高手请看)!!!!!!! 你可以用通过先stat.getBlob得到这个对象,然后保存到内存中,修改以后就可以setBlob了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static void insertblob() { Connection conn = null; PreparedStatement pst = null; ResultSet rs = null; FileInputStream inStream = null; try { conn = new SQLDataBaseDAO2().getConnection();//此处取连接 conn.setAutoCommit(false);//关键,好象不可少 String sqlStr = "insert into bintable (icol2,idd2) values (empty_blob(),100)"; String sqlQuery = "select icol2 from bintable where idd2=100 for update"; pst = conn.prepareStatement(sqlStr); File file = new File("C:/dd.bmp"); inStream = new FileInputStream(file); byte[] buffer = new byte[inStream.available()]; pst.executeUpdate(); conn.commit(); rs = pst.executeQuery(sqlQuery); if (rs.next()) { BLOB blob = ( (OracleResultSet) rs).getBLOB("icol2"); OutputStream outStream = blob.getBinaryOutputStream(); inStream.read(buffer); outStream.write(buffer); outStream.flush(); pst.execute("commit"); outStream.close(); System.out.println("ok"); } } catch (Exception e) { e.printStackTrace(); } finally { try { if (rs != null) { rs.close(); } if (pst != null) { pst.close(); } if (conn != null) { conn.close(); } } catch (SQLException se) { se.printStackTrace(); } try { if (inStream != null) { inStream.close(); } } catch (IOException ie) { ie.printStackTrace(); } } } 那如何将textfield中的内容(为BLOB型)输入到数据库中,以及如何将数据库中的BLOB型字段内容取到textfield中? 求解-GUI布局问题(菜鸟级) 正则表达式 如何用HTMLParser 提取Html中的信息 新手有问题啦。。。谢谢。。。。 怎么判断InputStream这个流中无数据 ? struts中一个转发得问题? eclipse问题求助! JAVA程序在哪运行呀! 为何我在XP操作系统下面装不了j2sdk? 如何处理mouse 双击事件 为什么用线程实现不了动态页面? 名词解释
Connection conn = null;
PreparedStatement pst = null;
ResultSet rs = null;
FileInputStream inStream = null;
try {
conn = new SQLDataBaseDAO2().getConnection();//此处取连接
conn.setAutoCommit(false);//关键,好象不可少
String sqlStr =
"insert into bintable (icol2,idd2) values (empty_blob(),100)";
String sqlQuery = "select icol2 from bintable where idd2=100 for update";
pst = conn.prepareStatement(sqlStr);
File file = new File("C:/dd.bmp");
inStream = new FileInputStream(file);
byte[] buffer = new byte[inStream.available()]; pst.executeUpdate();
conn.commit(); rs = pst.executeQuery(sqlQuery);
if (rs.next()) {
BLOB blob = ( (OracleResultSet) rs).getBLOB("icol2");
OutputStream outStream = blob.getBinaryOutputStream();
inStream.read(buffer);
outStream.write(buffer);
outStream.flush();
pst.execute("commit");
outStream.close();
System.out.println("ok");
}
}
catch (Exception e) {
e.printStackTrace();
}
finally {
try {
if (rs != null) {
rs.close();
}
if (pst != null) {
pst.close();
}
if (conn != null) {
conn.close();
}
}
catch (SQLException se) {
se.printStackTrace();
}
try {
if (inStream != null) {
inStream.close();
}
}
catch (IOException ie) {
ie.printStackTrace();
}
}
}