我想使用utl_file包来读取文件并将它们上传到db。
declare
l_fhandle utl_file.file_type;
l_clob CLOB;
l_buffer VARCHAR2(4096);
BEGIN
l_fhandle := utl_file.fopen('admin',
'FILE.TXT',
'R');
dbms_lob.createtemporary(l_clob, TRUE, DBMS_LOB.CALL);
LOOP
BEGIN
utl_file.get_line(L_FHANDLE, l_buffer);
dbms_output.put_line(l_buffer);
dbms_lob.writeappend(l_clob, length(l_buffer), l_buffer);
EXCEPTION
WHEN no_data_found THEN
INSERT INTO interfacetable
(FILENAME, content)
VALUES
('FILE', l_clob);
EXIT;
END;
END LOOP;
END;
/
使用sql创建目录
create or replace directory admin as 'D:\temp';
但是在运行程序时遇到错误
声明 *第1行的错误:ORA-29280:无效的目录路径ORA-06512:在“SYS.UTL_FILE”,第41行ORA-06512:在“SYS.UTL_FILE”,第478行 ORA-06512:第6行
请帮忙
答案 0 :(得分:0)
您可能有两个案例:
即。而不是
admin
使用ADMIN
create or replace directory ADMIN as 'D:\temp'; / grant read, write on directory ADMIN to {user | role | PUBLIC}; /