当前位置导航:炫浪网>>网络学院>>编程开发>>Oracle教程

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


   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 < length loop
   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')这个过程提示告诉浏览器
  显示的是一个图片。
  
相关内容
赞助商链接