asp如何显示存储在数据库BLOB字段中的图像?

时间:2010-06-08 09:31:00 

如何显示存储在BLOB字段中的图像?

showimges.asp

' 在浏览器上单独显示图像
   <%@ LANGUAGE=″VBSCRIPT″ %> 
   <% 
   Response.Expires = 0 
   Response.Buffer = TRUE 
   Response.Clear 
' 清除已经存在的HTTP header信息 
   Response.ContentType = "image/gif" 
' 将HTTP header置为image/gif,表示传送的将是图像信息 
   Set cn = Server.CreateObject(″ADODB.Connection″) 
   ' 根据指定的数据源名(myDSN)将数据取出 
   cn.Open "DSN=myDSN;UID=sa;PWD=;DATABASE=pubs" 
   Set rs = cn.Execute("SELECT photo FROM people WHERE id='3302'″) 
   Response.BinaryWrite rs("photo") 
   Response.End 
   %> 
  

我将上面的代码加入到IMAGE标记中,以实现将图像从SQL Server取出并插入到合适的HTML或ASP页面中:

showimges.htm

<HTML> 

   <HEAD> 

   <TITLE>asp教程之图像显示 - aspxhome.com</TITLE> 

   </HEAD> 

   <BODY> 

   <IMG SRC="showimges.asp"> 

   </BODY> 

   </HTML> 

可为什么有些时候图像不能正确显示,而有些时候就能显示呢?

这种情况我想可能会发生在直接用MS Access MS Visual FoxPro作为图像数据输入工具时遇到。其根本原因正如你在问题的开始说的,“从SQL Server的BLOB字段Photo中取出.GIF图像的二进制数据,构造出一个HTTP Header……”,问题就在这里:

在ASP中,认为从BLOB字段中取出的图像数据是原始的.GIF或.JPEG格式的二进制数据流,而浏览器也认做在HTTP Header之后所得到的数据是原始的.GIF或.JPEG格式的二进制数据流。这时,如果在BLOB字段中再包含有其它的信息的话,那么这个图像就不能正确显示出来。因为,在作为图像数据输入工具时,在存储图像数据的同时,会在实际的图像数据之前加上OLE信息,然后再一起存放到BLOB字段中。

当然,我们用这个显示图像的办法,也可以举一反三,处理存放在 BLOB字段中其它的二进制数据,如:只要将Response.ContentType设置为“application/msword”,告诉浏览器数据的类型,就可以将存放在BLOB字段中的Word文档在用户端的浏览器中显示出来。

标签:数据库,图像,字段,asp
0
投稿

猜你喜欢

  • IIRF(Ionic's Isapi Rewrite Filt er)入门,在IIS上重写Url

    2007-09-23 12:16:00
  • Python cv2 图像自适应灰度直方图均衡化处理方法

    2022-09-21 17:01:57
  • Python爬虫之网络请求

    2023-10-29 21:28:08
  • 微软建议的ASP性能优化28条守则(6)

    2008-02-29 11:43:00
  • Python爬虫实现的根据分类爬取豆瓣电影信息功能示例

    2022-10-14 04:27:51
  • SQL Server 2005通用分页存储过程及多表联接应用

    2024-01-13 22:39:31
  • Python中asyncore异步模块的用法及实现httpclient的实例

    2021-02-19 01:05:18
  • Golang中omitempty关键字的具体实现

    2024-04-25 15:12:55
  • python 安装移动复制第三方库操作

    2022-01-20 06:43:09
  • python redis连接 有序集合去重的代码

    2023-10-23 21:24:32
  • 和server XMLHTTP相关的几个函数

    2008-09-21 13:56:00
  • python 二维矩阵转三维矩阵示例

    2023-09-14 03:53:56
  • Keras loss函数剖析

    2021-01-24 05:25:27
  • 本机安装PaddlePaddle安装指南及步骤详解

    2023-12-18 19:35:57
  • JS 类型转换常见方法小结

    2024-04-17 09:49:17
  • 用面包屑来简化多层的tabs

    2011-06-16 20:32:54
  • 对python中各个response的使用说明

    2023-01-20 02:43:16
  • JavaScript实现Tab标签页切换的最简便方式(4种)

    2024-04-17 10:30:36
  • python3格式化字符串 f-string的高级用法(推荐)

    2023-04-13 00:56:55
  • pyqt5 从本地选择图片 并显示在label上的实例

    2022-12-12 17:48:04
  • asp之家 网络编程 m.aspxhome.com