oracle 8i和9i中对BLOB字段操作的区别?

nccxl 2005-07-27 05:22:36
想请教一下,我现在有一段对oracle9i中BLOB字段操作的代码,想转成8i的操作代码。请问怎么改?

代码:
Statement stmt=null;
DbaObj.Conn.setAutoCommit(false) ;
stmt = DbaObj.Conn.createStatement();
OracleResultSet update=(OracleResultSet)stmt.executeQuery("select FileBody from Document_File where Fileid=" + String.valueOf(iFileId)+ " for update");

if (update.next()){
try{
PutAtBlob(((oracle.jdbc.OracleResultSet)update).getBLOB("FileBody"),mFileSize);
}
catch (IOException e) {
System.out.println(e.toString());
}
}
update.close();
stmt.close();
...全文
229 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
nccxl 2005-07-29
  • 打赏
  • 举报
回复
找到问题了,8i下还是要使用oracle.jdbc.driver.OracleResultSet。
nccxl 2005-07-29
  • 打赏
  • 举报
回复
我调试了一下,好象 (oracle.jdbc.driver.OracleResultSet)update).getBLOB() 取出来的BLOB对象中的数据和数据库中BLOB字段中的内容不吻合。也就是说BLOB对象没取到正确的值,请问这是为什么?

我换成了oracle.jdbc.OracleResultSet也不行。

还请各位高手帮帮忙啊。
nccxl 2005-07-29
  • 打赏
  • 举报
回复
原来用classes111.zip,好象不行,现在用的是classes12.zip,还在试。
liuyi8903 2005-07-29
  • 打赏
  • 举报
回复
你现在是哪个?
nccxl 2005-07-29
  • 打赏
  • 举报
回复
8i是用哪个驱动的?classes12.zip还是classes111.zip?
另外oracle.jdbc.OracleResultSet和oracle.jdbc.driver.OracleResultSet有什么不同?
nccxl 2005-07-28
  • 打赏
  • 举报
回复
在8i下不行才来请教的。
在这句会出问题:
OracleResultSet update=(OracleResultSet)stmt.executeQuery("select FileBody from Document_File where Fileid=" + String.valueOf(iFileId)+ " for update");
zhpsam109 2005-07-28
  • 打赏
  • 举报
回复
没有区别的,在8i也可以!
liuyi8903 2005-07-28
  • 打赏
  • 举报
回复
应该是jdbc的问题。换个8i的jdbc驱动看看。
nccxl 2005-07-28
  • 打赏
  • 举报
回复
问题没解决啊
nccxl 2005-07-28
  • 打赏
  • 举报
回复
自顶。
liuyi8903 2005-07-27
  • 打赏
  • 举报
回复
你在8i下试过这段代码吗?

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧