如何从Pl/SQL写入文本文件,PLS错误00363 [英] How to write to a text file from Pl/SQL, PLS error 00363

查看:146
本文介绍了如何从Pl/SQL写入文本文件,PLS错误00363的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试从过程中写入文件:

I am trying to write to a file from a procedure:

out_File := Utl_File.FOpen('C:\test', 'batotest.txt' , 'W');

  Utl_File.Put_Line(out_file , 'Hi this is text file!');
  Utl_File.FClose(out_file);

PACKAGE xxxxxxxx的编译错误

Compilation errors for PACKAGE xxxxxxxx

Error: PLS-00363: âûðàæåíèå 'OUT_FILE' íå ì.á. èñïîëüçîâàíî êàê àäðåñàò íàçíà÷åíèÿ
Line: 795
Text: out_File := Utl_File.FOpen('C:\test', 'batotest.txt' , 'W');

Error: PL/SQL: Statement ignored
Line: 795
Text: out_File := Utl_File.FOpen('C:\test', 'batotest.txt' , 'W');

Error: PLS-00363: 'OUT_FILE' íå ì.á. èñïîëüçîâàíî êàê àäðåñàò íàçíà÷åíèÿ
Line: 797
Text: Utl_File.FClose(out_file);

Error: PL/SQL: Statement ignored
Line: 797
Text: Utl_File.FClose(out_file);

这是我的代码,它给了我这个错误,怎么了?

So this is my code and it gives me this error, what is wrong?

推荐答案

首先,您需要创建目录对象以访问C:\ test目录:

First, you need to create a directory object to access the C:\test directory:

CREATE OR REPLACE DIRECTORY CTEST AS 'C:\test';
GRANT READ ON DIRECTORY CTEST TO PUBLIC; 

接下来,打开文件时,您需要使用此目录对象:

Next, you need to use this directory object when opening your file:

DECLARE
  out_File  UTL_FILE.FILE_TYPE;
BEGIN
  out_File := UTL_FILE.FOPEN('CTEST', 'batotest.txt' , 'W');

  UTL_FILE.PUT_LINE(out_file , 'Hi this is text file!');
  UTL_FILE.FCLOSE(out_file);
END;

分享并享受.

这篇关于如何从Pl/SQL写入文本文件,PLS错误00363的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆