为什么可以写文件而不可以读文件?
一读文件就出现ORA-29283: invalid file operation 的错误
而写文件就没有问题,都是一样的路径。一样的文件名。
CREATE OR REPLACE FUNCTION acd(IN_NAME IN VARCHAR2)
RETURN VARCHAR2
IS
FILE_HANDLE UTL_FILE.FILE_TYPE;
OUTLOG_DIR VARCHAR2(2000);
NUM INTEGER;
BEGIN
LOOP
BEGIN
FILE_HANDLE := UTL_FILE.FOPEN( 'MILKLOG_DIR ' , 'output.txt ', 'R ');
UTL_FILE.GET_LINE(FILE_HANDLE,OUTLOG_DIR);
EXCEPTION
WHEN NO_DATA_FOUND
THEN
EXIT;
END;
END LOOP;
NUM := INSTR(OUTLOG_DIR, '= ',1,1);
OUTLOG_DIR := SUBSTR(OUTLOG_DIR,NUM);
RETURN OUTLOG_DIR;
END;
MILKLOG_DIR是一个dectionary.
还请高手指教。
------解决方案--------------------UTL_FILE.GET_LINE (
file IN FILE_TYPE,
buffer OUT VARCHAR2,
linesize IN NUMBER,
len IN PLS_INTEGER DEFAULT NULL);
get_line 至少还有个 linesize 参数,你少了这个参数.