假设有一个这样的表 blob_test id number; picture blob; 下面通过一个存储过程把外部文件导入到表中 先建个directory create or replace directory IMAGE as '你放文件的路径';这个过程插入数据CREATE OR REPLACE PROCEDURE insert_photo (p_rno NUMBER, p_photo VARCHAR2) AS f_photo BFILE; b_photo BLOB; Begin-- Update the employee photoinsert into blob_test values (p_rno,empty_blob())RETURN picture into b_photo;-- find where the photo's pointer is located.f_photo := bfilename('IMAGE', p_photo);-- open the photo as read-only option. dbms_lob.fileopen(f_photo, dbms_lob.file_readonly);-- load the photo into column photo. dbms_lob.loadfromfile(b_photo,f_photo, dbms_lob.getlength(f_photo));-- close the photo's pointer. dbms_lob.fileclose(f_photo);-- Save the loaded photo record. COMMIT;EXCEPTION-- Check for your error messagesWHEN others THENdbms_output.put_line('*** ERROR *** Check you procedure.');END; / 你也可以由应用程序通过流方式写入
blob_test
id number;
picture blob;
下面通过一个存储过程把外部文件导入到表中
先建个directory
create or replace directory IMAGE as '你放文件的路径';这个过程插入数据CREATE OR REPLACE PROCEDURE insert_photo (p_rno NUMBER, p_photo VARCHAR2) AS f_photo BFILE; b_photo BLOB; Begin-- Update the employee photoinsert into blob_test values (p_rno,empty_blob())RETURN picture into b_photo;-- find where the photo's pointer is located.f_photo := bfilename('IMAGE', p_photo);-- open the photo as read-only option. dbms_lob.fileopen(f_photo, dbms_lob.file_readonly);-- load the photo into column photo. dbms_lob.loadfromfile(b_photo,f_photo, dbms_lob.getlength(f_photo));-- close the photo's pointer. dbms_lob.fileclose(f_photo);-- Save the loaded photo record. COMMIT;EXCEPTION-- Check for your error messagesWHEN others THENdbms_output.put_line('*** ERROR *** Check you procedure.');END; /
你也可以由应用程序通过流方式写入