2017-03-01 7 views
0

오라클 APEX 애플리케이션에서 텍스트 파일을 작성해야합니다. (Release 4.2) 아래 코드를 발견했지만 ORA-29280 디렉토리 경로가 잘못되었습니다.
지정된 디렉토리는 쓰기 권한이있는 디렉토리입니다. 메모장에서 파일을 만들어이 디렉토리에 저장했습니다.오라클 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