在Oracle9ias中如何显示存在Oracle数据库中的图片

王朝oracle·作者佚名  2008-05-19
宽屏版  字体: |||超大  

create table user_m

(

userid varchar2(10),

photo blob

);

procedure get_img(vuserid varchar2) is

vblob blob;

buffer raw(32000);

buffer_size integer := 32000;

offset integer := 1;

length number;

begin

owa_util.mime_header('image/gif');

select photo into vblob from user_m where userid = vuserid;

length := dbms_lob.getlength(vblob);

while offset

dbms_lob.read(vblob, buffer_size, offset, buffer);

htp.prn(utl_raw.cast_to_varchar2(buffer));

offset := offset + buffer_size;

end loop;

exception

when others then

htp.p(sqlerrm);

end;

解释:

在配置好pl/sql网关后,就可以调用这个存储过程例如:get_img?vuserid=1000

这里用到blob字段类型和对blob进行read操作的dbms_lob.read,以及在浏览器中

显示过程htp.prn,owa_util.mime_header('image/gif')这个过程提示告诉浏览器

显示的是一个图片。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有