GRANT DBA TO TEST;
grant create any directory to test;
grant create any library to test;
create table bfile_tab(bfile_column bfile);
create table blob_tab(blob_column blob);
create or replace directory UTLLOBDIR as '/home/oracle/test';
DECLARE
v_blob BLOB;
v_bfile BFILE := bfilename('UTLLOBDIR', 'test.doc');
BEGIN
INSERT INTO bfile_tab (bfile_column) VALUES (v_bfile) RETURNING bfile_column into v_bfile;
INSERT INTO blob_tab (blob_column) VALUES (empty_blob()) RETURNING blob_column INTO v_blob;
dbms_lob.fileopen(v_bfile);
dbms_lob.loadfromfile(DEST_LOB => v_blob,SRC_LOB => v_bfile,AMOUNT => dbms_lob.getlength(v_bfile));
dbms_lob.fileclose(v_bfile);
COMMIT;
END;
/
本文详细介绍了在Oracle数据库中使用BLOB和BFILE数据类型进行文件存储的方法,并通过示例展示了如何创建目录、插入文件和将文件内容加载到数据库。
3493

被折叠的 条评论
为什么被折叠?



