标题:[求助]怎样读取ACCESS数据库中的OLE对象的图片???
只看楼主
xqiang
Rank: 1
等 级:新手上路
帖 子:291
专家分:0
注 册:2006-2-23
 问题点数:0 回复次数:9 
[求助]怎样读取ACCESS数据库中的OLE对象的图片???

怎样读取ACCESS数据库中的OLE对象的图片啊???
我想把ACCESS数据库中的图片都保存在本地计算机上,要怎么编程啊?
谢谢

搜索更多相关主题的帖子: OLE对象 数据库 ACCESS 计算机 
2006-12-18 10:14
angeloc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:36
帖 子:1353
专家分:0
注 册:2006-11-21
得分:0 
你的帖子不应该发在这里!到ACCESS版块去吧

老牛明知夕阳晚,不用扬鞭自奋蹄; Angelo\'s BLOG
2006-12-18 10:25
xqiang
Rank: 1
等 级:新手上路
帖 子:291
专家分:0
注 册:2006-2-23
得分:0 



相信自己可以的!!! http://www.
2006-12-18 10:34
xqiang
Rank: 1
等 级:新手上路
帖 子:291
专家分:0
注 册:2006-2-23
得分:0 

也不对啊

我是用JSP把它读取出来哦?
应该是写在这里吧?


相信自己可以的!!! http://www.
2006-12-18 10:36
angeloc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:36
帖 子:1353
专家分:0
注 册:2006-11-21
得分:0 
图片视频保存在本地,数据库里只存他们的路径等信息就可以了,然后和HTML中一样使用!

老牛明知夕阳晚,不用扬鞭自奋蹄; Angelo\'s BLOG
2006-12-18 10:38
xqiang
Rank: 1
等 级:新手上路
帖 子:291
专家分:0
注 册:2006-2-23
得分:0 

问题不是这样的,
那些图片已经保存在了ACCESS数据库里的OLE字段里
现在要把那些图片读取出来并保存在本地,怎么办?


相信自己可以的!!! http://www.
2006-12-18 11:46
rainic
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2367
专家分:0
注 册:2005-8-9
得分:0 

用JSP从数据库中读取图片并显示在网页上

环境mysql+tomcat:

<1>先在mysql下建立如下的table. 并insert图像.

mysql.sql文件如下:

CREATE TABLE photo (
photo_no int(6) unsigned NOT NULL auto_increment,
image blob,
PRIMARY KEY (`photo_no`)
)


<2>把show.jsp放在tomcat的任意目录下. show.jsp作用:从数据库中读出blob,并产生image/jpg.

show.jsp文件如下:

<%@ page contentType="text/html; charset=gbk" %>
<%@ page import="java.io.*"%>
<%@ page import="java.sql.*, javax.sql.*" %>
<%@ page import="java.util.*"%>
<%@ page import="java.math.*"%>

<%
String photo_no = request.getParameter("photo_no");

//mysql连接
Class.forName("com.mysql.jdbc.Driver").newInstance();
String URL="jdbc:mysql://localhost:3306/job?user=root&password=111111";
Connection con = DriverManager.getConnection(URL);

//oracle连接
//String URL="jdbc:oracle:thin@localhost:1521:orcl2";
//user="system";
//password="manager";
//Connection con = DriverManager.getConnection(URL,user,password);


try{
// 准备语句执行对象
Statement stmt = con.createStatement();

String sql = " SELECT * FROM PHOTO WHERE photo_no = "+ photo_no;
ResultSet rs = stmt.executeQuery(sql);
if (rs.next()) {
Blob b = rs.getBlob("photo_image");
long size = b.length();
//out.print(size);
byte[] bs = b.getBytes(1, (int)size);
response.setContentType("image/jpeg");
OutputStream outs = response.getOutputStream();
outs.write(bs);
outs.flush();
rs.close();
}
else {
rs.close();
response.sendRedirect("./images/error.gif");
}
}
finally{
con.close();
}
%>


<3>把如下文件放在show.jsp的同一目录下.

index.html文件如下:

<HTML>
<HEAD>
<TITLE> 图像测试 </TITLE>

</HEAD>

<BODY>
<TABLE>
<TR>
<TD>图像测试</TD>
</TR>
<TR>
<TD><img src="show.jsp?photo_no=2"></TD>
</TR>
</TABLE>

</BODY>
</HTML>


2006-12-18 17:37
xqiang
Rank: 1
等 级:新手上路
帖 子:291
专家分:0
注 册:2006-2-23
得分:0 

楼上的的,你把数据库搞错了,
是ACCESS数据库,而不是MYSQL
ACCESS没有BLOB这个字段类型,所以没法用这个Blob b = rs.getBlob("photo_image");
谢谢你
还有没有其它办法啊?

[此贴子已经被作者于2006-12-18 18:17:30编辑过]


相信自己可以的!!! http://www.
2006-12-18 18:16
rainic
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2367
专家分:0
注 册:2005-8-9
得分:0 
楼主
方法是一样的,ACCESS的OLE相当于MySQL里的BLOB
你仔细研究那代码吧

2006-12-19 11:54
xqiang
Rank: 1
等 级:新手上路
帖 子:291
专家分:0
注 册:2006-2-23
得分:0 

不行啊,问题至今没有解决

UP


相信自己可以的!!! http://www.
2006-12-27 12:39



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-110209-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.373354 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved