【发布时间】:2019-05-10 18:12:00
【问题描述】:
我正在尝试创建一个访问文件的目录,但出现了访问被拒绝的错误消息。
更具体地说,我想从 plsql 访问不同于 db 服务器的服务器。
服务器的路径是:\192.168.3.15\k$\INPUT_FILES\
我尝试创建如下目录: 创建或替换目录 'TEST' 为 '\192.168.3.15\k$\INPUT_FILES';
通过 AS_READ_XLSX 包访问文件
SELECT *
FROM TABLE( AS_READ_XLSX.READ( AS_READ_XLSX.FILE2BLOB( 'TEST', 'aaa.xlsx' );
但我得到错误
ORA-22288: 文件或 LOB 操作 FILEOPEN 失败
访问被拒绝。
ORA-06512:“AS_READ_XLSX”,第 361 行
function file2blob
( p_dir varchar2
, p_file_name varchar2
)
return blob
is
file_lob bfile;
file_blob blob;
begin
file_lob := bfilename( p_dir, p_file_name );
dbms_lob.open( file_lob, dbms_lob.file_readonly );
dbms_lob.createtemporary( file_blob, true );
dbms_lob.loadfromfile( file_blob, file_lob, dbms_lob.lobmaxsize );
dbms_lob.close( file_lob );
return file_blob;
exception
when others then
if dbms_lob.isopen( file_lob ) = 1
then
dbms_lob.close( file_lob );
end if;
if dbms_lob.istemporary( file_blob ) = 1
then
dbms_lob.freetemporary( file_blob );
end if;
raise; --361 LINE
end;
有什么想法吗?
【问题讨论】: