如何給oracle導入blob和clob字段?
例:假設給oracle數據庫導入blob類型的圖片,圖片放在目錄G:\images下。
1.先創建一個目錄directory,命名為IMAGES; CREATE OR REPLACE DIRE,TORY IMAGES AS 'G:\test';或者直接在PlSql Directories目錄下新建目錄;
2.創建一個存儲過程,批量導入blob create or replace procedure img_insert asbeginDECLARE f_lob bfile;--文件類型b_lobblob; --用來存儲圖片的名稱filenamevarchar2(400);begin --循環的初始值for i in 1 .. 100 loop --找出每一列的文件名,因為文件名和圖片名稱是一樣的 select t.flnm into filename from ZS_GC_SNIMDT t where t.id =i; --查找到之后,執行update操作,插入空的blob (注意IMAGES一定要大寫) update ZS_GC_SNIMDT set brfl = empty_blob()whereid = i return brfl into b_lob; --獲取指定目錄下的文件 f_lob := bfilename('IMAGES', filename); -- 以只讀的方式打開文件 dbms_lob.fileopen(f_lob, dbms_lob.file_readonly);--傳遞對象 dbms_lob.loadfromfile(b_lob, f_lob, dbms_lob.getlength(f_lob)); --關閉原始文件