把图片以BLOB形式存入ORACLE数据库中。当文件大于3K时。就报错。为什么?(在线急等)

4229716 2003-09-04 04:25:04
把图片以BLOB形式存入ORACLE数据库中。当文件大于3K时。就报错。为什么?(在线急等)
...全文
89 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunnf 2004-03-06
  • 打赏
  • 举报
回复
关注
bjblz 2003-12-21
  • 打赏
  • 举报
回复
没人会吗?
bjblz 2003-12-21
  • 打赏
  • 举报
回复
我也出现了这们的问题
4229716 2003-09-06
  • 打赏
  • 举报
回复
源代码:
<%@ page import="java.sql.*,java.util.Date,java.io.*,java.text.DecimalFormat" contentType="text/html;charset=gb2312" %>
<%
Class.forName("oracle.jdbc.driver.OracleDriver");
String url="jdbc:oracle:thin:@120.43.2.12:1521:wj";
Connection con=DriverManager.getConnection(url,"aa","aa");


File MyFile=new File("C:/000001.gif");
FileInputStream fis=new FileInputStream(MyFile);

//插入数据库
String sql="insert into temp values (?,?)";
//获取传值ID
//String id=request.getParameter("id");
//获取image的路径
//String kk=request.getParameter("image");

//long l1=MyFile.length();
//int l2=(int)l1;

PreparedStatement ps =con.prepareStatement(sql);
ps.setString(1,"1");
ps.setBinaryStream(2,fis,(int)MyFile.length());
ps.executeUpdate();
ps.close();
con.close();
fis.close();
out.println("ok!!!");
%>
当文件大于3K多时报错
java.sql.SQLException: 无法从套接字读取更多的数据
当再大点是会报错
java.sql.SQLException: Io 异常: Connection reset by peer: JVM_recv in socket input stream read
dreamsky15 2003-09-04
  • 打赏
  • 举报
回复
不知你的报错是什么类型的。但将大数据存储到Blob字段,最好设置输入流,每8K为一个缓冲,这样就不会出现文件大小的局限。我将100M的软件存到Blob中,再提取出来都没有问题。
honest19 2003-09-04
  • 打赏
  • 举报
回复
你是不是用thin方式的URL.换成OCI
llpei 2003-09-04
  • 打赏
  • 举报
回复
你应该看看你的数据库中这个字段的大下设订试多少
如果有什么错误
贴出来大家看看
4229716 2003-09-04
  • 打赏
  • 举报
回复
急。。。。。。。
4229716 2003-09-04
  • 打赏
  • 举报
回复
up.....

81,116

社区成员

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

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