在没有假脱机或 utl_file 的情况下写入 PL/SQL 中的文件
Write to a file in PL/SQL without spools or utl_file
正在尝试通过过程创建输出文件,但无法修改 init.ora 以允许 utl_file_dir 或创建目录。有没有另一种方法可以在不创建 table 和做一个简单的假脱机的情况下完成此操作,不幸的是,这也不是问题。
没有。您需要访问 init.ora
才能通过 Oracle 顺利完成这项工作。
我能想到的唯一其他选择是使用 Java 程序来写入文件。我找不到您需要设置的任何特殊要求才能使用它。阅读主题 here。
如果您有权访问 sqlplus,则将 dbms_output.put_line 消息添加到代码中,并在 sqlplus 中添加 运行 消息。在 运行ning 之前键入:
spool <filename you want>
然后
spool off
关闭文件并停止写入。
那个或使用 Java 都可以是一个选项,但您需要额外的权限才能访问文件系统并在 db 上编译 java 方法。
您真的应该被授予访问文件系统目录的权限。与 dba 交谈,如果有业务需求,您应该能够实现它。
正在尝试通过过程创建输出文件,但无法修改 init.ora 以允许 utl_file_dir 或创建目录。有没有另一种方法可以在不创建 table 和做一个简单的假脱机的情况下完成此操作,不幸的是,这也不是问题。
没有。您需要访问 init.ora
才能通过 Oracle 顺利完成这项工作。
我能想到的唯一其他选择是使用 Java 程序来写入文件。我找不到您需要设置的任何特殊要求才能使用它。阅读主题 here。
如果您有权访问 sqlplus,则将 dbms_output.put_line 消息添加到代码中,并在 sqlplus 中添加 运行 消息。在 运行ning 之前键入:
spool <filename you want>
然后
spool off
关闭文件并停止写入。
那个或使用 Java 都可以是一个选项,但您需要额外的权限才能访问文件系统并在 db 上编译 java 方法。
您真的应该被授予访问文件系统目录的权限。与 dba 交谈,如果有业务需求,您应该能够实现它。