2017-03-01 14 views
0

Oracle APEXアプリケーションからテキストファイルを作成する必要があります。 (リリース4.2)以下のコードが見つかりましたが、エラーORA-29280のディレクトリ・パスが無効です。
指定されたディレクトリは、書き込みアクセス権を持つディレクトリです。メモ帳でファイルを作成し、このディレクトリに保存しました。Oracle APEXアプリケーションからテキストファイルを作成

多分私は出力ディレクトリを閲覧する必要があります。 APEXには出力ファイルのブラウズがありますか?

私に教えてください。ありがとう。

私のコード

Declare 
    v_input_record varchar2(600); 
    p_dir varchar2(200); 
    p_file varchar2(50); 
    l_output utl_file.file_type; 
    l_amt number default 32000; 

cursor cur_go_thru_AD_INPUT 
    is select COUNTY_INPUT_RECORD 
    from ad_county_input_file 
    order by county_input_file_id_seq; 

begin 
    p_dir := 'C:\Windows\Temp'; 
    p_file := 'SoS-Output.asc'; 
    l_output := utl_file.fopen(p_dir, p_file, 'w', 32767); 

    open cur_go_thru_AD_INPUT; 
    LOOP 
    FETCH cur_go_thru_AD_INPUT 
      INTO v_input_record; 
    EXIT WHEN cur_go_thru_AD_INPUT%NOTFOUND; 

    utl_file.put(l_output, v_input_record); 
    utl_file.fflush(l_output); 

    END LOOP; 

utl_file.new_line(l_output); 
utl_file.fclose(l_output); 

終了。

+0

多分最初、私はそれがクライアントPC上のディレクトリ、することはできないと言われたディレクトリ – TheName

答えて

0

多分最初のディレクトリに

create or replace directory DIRECTORY_NAME as 'C:\Windows\Temp'; 

を作成しようとし、それを呼び出す

utl_file.fopen('DIRECTORY_NAME', p_file, 32767); 
+0

を作成しよう私が望むもの – Wayne

+0

utl_fileはクライアントマシンに書き込むことはできず、データベースサーバだけに書き込むことはできません。 – TheName

+0

しかし、クライアントPCに書き込む方法があります。ここには完全なチュートリアルがあります:http://dba-oracle.com/t_oracle:__write_a_file_to_to_a_client_pc.htm – TheName

関連する問題