sys@ORADG(192.168.190.241)> show parameter utl

NAME TYPE VALUE

------------------------------------ ---------------------- ------------------------------

utl_file_dir string /oracle/test123, /oracle/logmnr <====-修改前的值

sys@ORADG(192.168.190.241)> alter system set utl_file_dir='/oracle/test123, /oracle/logmnr' scope=spfile;<====错误的用了'xxxxx,yyyyyy'来设置,应该是'xxxxx','yyyyyyy'

System altered.

Elapsed: 00:00:00.01

sys@ORADG(192.168.190.241)>

sys@ORADG(192.168.190.241)>

sys@ORADG(192.168.190.241)> startup force

ORACLE instance started.

Total System Global Area 370218244 bytes

Fixed Size 451844 bytes

Variable Size 167772160 bytes

Database Buffers 201326592 bytes

Redo Buffers 667648 bytes

Database mounted.

Database opened.

sys@ORADG(192.168.190.241)>

sys@ORADG(192.168.190.241)> show parameter utl

NAME TYPE VALUE

------------------------------------ ---------------------- ------------------------------

utl_file_dir string /oracle/test123, /oracle/logmnr <====修改后的值,注意此处,看上去和修改前一模一样。

sys@ORADG(192.168.190.241)>

但是测试SQL就报错了:

> DECLARE

2 file_location VARCHAR2(256) := '/oracle/test123';

3 file_name VARCHAR2(256) := 'utlfile.txt';

4 file_text VARCHAR2(256) := 'Hello World';

5 file_id UTL_FILE.file_type;

6 BEGIN

7 file_id := UTL_FILE.fopen(file_Location, file_name, 'W');

8 UTL_FILE.put_line(file_id, file_text);

9 UTL_FILE.fclose(file_id);

10 EXCEPTION

11 WHEN UTL_FILE.INVALID_PATH

12 THEN dbms_output.put_line('Invalid path ' || SQLERRM);

13 WHEN OTHERS

14 THEN dbms_output.put_line('Others '|| SQLCODE || ' ' || SQLERRM);

15 END;

16 /

Invalid path ORA-29280: invalid directory path <====此处就报错了。

PL/SQL procedure successfully completed.

Elapsed: 00:00:00.01

>

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐