將 圖片 文件存儲到 Oracle 的存儲過程
2024-08-29 13:29:12
供稿:網友
 
測試環境: win2000 + oracle92
        一個存儲圖片文件的過程,任何開發工具都可以通過調用過程把圖片文存儲到數據庫中。
詳細步驟:
microsoft windows 2000 [version 5.00.2195]
(c) 版權所有 1985-2000 microsoft corp.
 
c:/documents and settings/chanet>cd/
 
c:/>sqlplus /nolog
 
sql*plus: release 9.2.0.1.0 - production on 星期三 1月 19 14:46:21 2005
 
copyright (c) 1982, 2002, oracle corporation.  all rights reserved.
 
sql> connect chanet/[email protected];
已連接。
sql> create table image_lob (t_id varchar2 (5) not null,t_image blob not null);
 
表已創建。
 
sql> create or replace directory images as 'c:/oracle'; --圖片目錄
 
目錄已創建。
 
sql> create or replace procedure img_insert (tid varchar2,filename varchar2) as
  2    f_lob bfile;
  3    b_lob blob;
  4  begin
  5    insert into image_lob (t_id, t_image)
  6      values (tid,empty_blob ()) return t_image into b_lob;
  7    f_lob:= bfilename ('images', filename);
  8    dbms_lob.fileopen (f_lob, dbms_lob.file_readonly);
  9    dbms_lob.loadfromfile (b_lob, f_lob,
 10    dbms_lob.getlength (f_lob));
 11    dbms_lob.fileclose (f_lob);
 12    commit;
 13  end;
 14  /
 
過程已創建。
 
sql>-- 示例
sql> exec img_insert('1','f_test.jpg');
 
pl/sql 過程已成功完成。
 ,歡迎訪問網頁設計愛好者web開發。