如何后台处理此pl / SQL过程的结果

问题描述 投票:0回答:1

是的,我知道,我也已经读过了,不可能假脱机pl / sql prozedure,那个人应该使用utl_file,但是实际上,我不知道它是如何工作的。有人可以帮忙吗,或者只是表明我可以在这里做什么。

所以这是我的代码,我有一个游标,我想假脱该游标的结果,您可以在dbms_output中看到它。

set serveroutput on
clear screen;

spool C:\Users\paule.kelodjoue\Documents\text.txt

declare
    l_output   utl_file.file_type;
    cursor cp_username (p_v_username in varchar2)
    is
       select owner, table_name          
       from   all_tables
       where owner = p_v_username
       order by owner, table_name ;   
begin
     l_output := utl_file.fopen();
     dbms_output.put_line('Alle Tabellen der User: &g_username');
     for cp_kur in cp_username('&g_username') loop
         dbms_output.put_line('Tabelle: '|| cp_kur.table_name );
     end loop;
end;

spool off;

我首先开始使用假脱机,但是他已经创建了文件,并在输出中放入了错误,然后我开始使用utl_file查看教程,但现在我迷路了

sql oracle plsql plsqldeveloper
1个回答
0
投票

您需要使用utl_file.put,如下所示:

fhandle := utl_file.fopen(
                  'utl_dir' -- File location
                , 'test_file.txt' -- File name
                , 'w' -- Open mode: w = write.
                    );

utl_file.put(fhandle, 'Hello world!'
                    || CHR(10));
utl_file.put(fhandle, 'Hello again!');

utl_file.fclose(fhandle);
© www.soinside.com 2019 - 2024. All rights reserved.