ORA-29283:读取文件时文件操作无效

时间:2015-07-30 07:41:04

标签: oracle plsql oracle11g

我有以下权限CREATE ANY DIRECTORY,读取,写入目录DOCS到user_name

我在Windows上使用oracle 10g。

我首先将目录创建为

CREATE DIRECTORY DOCS AS 'C:\Documents and Settings\Owner\Desktop\file';

目录已成功创建。

现在我尝试执行以下代码

DECLARE
 l_file         UTL_FILE.file_type;
 l_location     VARCHAR2(100) := 'DOCS';
 l_filename     VARCHAR2(100) := 'test.pdf';
 l_text         VARCHAR2(32767);
BEGIN
-- Open file.
 l_file := UTL_FILE.fopen(l_location, l_filename, 'r', 32767);
-- Read and output first line.
 UTL_FILE.get_line(l_file, l_text, 32767);
 dbms_output.put_line('First Line: |' || l_text || '|');
-- Close the file.
 UTL_FILE.fclose(l_file);
END;

我收到这些错误

  

ORA-29283:文件操作无效

     

ORA-06512:at" SYS.UTL_FILE",第475行

     

ORA-29283:文件操作无效

     

ORA-06512:第8行

1 个答案:

答案 0 :(得分:0)

我无法在Windows上访问oracle,但在init.ora文件中有类似的内容

UTL_FILE_DIR=c:\DOCS

然后你需要重新启动oracle

您还应该能够执行以下操作(但我没有对其进行测试)

alter system set utl_file_dir=c:\DOCS scope=both