使用 SQL Developer 和 PL/SQL 在本地文件系统上创建一个目录

Create a directory on the local file system using SQL Developer and PL/SQL

我有一些 PL/SQL 用于从一组表格创建 excel 电子表格。我 运行 使用 SQL 开发人员。在我的本地机器上(也安装了数据库)它工作正常,但在我们的测试环境中数据库在不同的机器上(我无权访问),它没有。

失败的相关 PL/SQL 语句是:

CREATE OR REPLACE DIRECTORY TEST_DIR AS 'c:\TEST'
/ 
...
v_fh := UTL_FILE.FOPEN(upper(v_dir),v_file,'w',32767);
...
UTL_FILE.PUT_LINE(v_fh,'<ss:Row>');

我知道这个问题是因为 CREATE DIRECTORY 创建了 "an alias for a directory on the server file system" (Oracle Docs) ,而不是本地的。如何在本地计算机上创建文件?使用 SPOOL 可以做到这一点吗?

CREATE DIRECTORY 和 UTL_FILE 仅在 Oracle 数据库实例为 运行 的服务器上。