如何给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)); --关闭原始文件
温馨提示:答案为网友推荐,仅供参考
相似回答