//--------------ORACLE 保存图片
grant create any directory to scott;
grant create any library to scott;
create or replace directory utllobdir as 'd:/oracle ';
create table bfile_tab (bfile_column BFILE);
create table utl_lob_test (blob_column BLOB);
set serveroutput on
然后执行下面语句就将d:/oracle目录下的Azul.jpg存入到utl_lob_test
表中的blob_column字段中了。
declare
a_blob BLOB;
a_bfile BFILE := BFILENAME( 'UTLLOBDIR ', 'Azul.jpg ');
begin
insert into bfile_tab values (a_bfile)
returning bfile_column into a_bfile;
insert into utl_lob_test values (empty_blob())
returning blob_column into a_blob;
dbms_lob.fileopen(a_bfile);
dbms_lob.loadfromfile(a_blob, a_bfile, dbms_lob.getlength(a_bfile));
dbms_lob.fileclose(a_bfile);
commit;
end;
/