我正在尝试使目录访问文件,但是会出现错误消息,拒绝访问。
更具体地说,我想从plsql访问与数据库服务器不同的服务器。
服务器的路径为:\ 192.168.3.15 \ k $ \ INPUT_FILES \
我尝试创建如下目录: 以'\ 192.168.3.15 \ k $ \ INPUT_FILES'创建或替换目录'TEST';
通过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;
请问有什么想法吗?
答案 0 :(得分:1)
我还不能发表评论,所以我正在写答案。 您是否检查了-我想-Linux服务器中的oracle / dba用户是否有权打开文件?尝试将文件访问权限授予服务器中的所有用户。 对我来说,这已经发生了好几次了。 :)