1
我想在循环中执行动态选择,但我没有得到任何结果。我想使它像正常选择一样工作。动态选择没有得到结果
create or replace type proc_args as varray(20) of varchar2(50);
/
create or replace procedure proc_show_tab(args proc_args)
is
id_kursora integer;
wart integer;
polecenie varchar2(30);
begin
for i in 1..args.count loop
polecenie := 'SELECT * FROM '||args(i);
execute immediate polecenie;
end loop;
end;
/
show error;
declare
args2 proc_args;
begin
args2 := proc_args();
args2.extend(2);
args2(1) := 'osrodek';
args2(2) := 'trasa';
proc_show_tab(args2);
end;
/
你怎么知道它没有得到任何结果。你目前的代码做选择,然后没有别的。 – Ben
因为在输出中我只得到: 'TYPE proc_args编译 PROCEDURE proc_poka_tabele编译 没有错误。 完成的匿名块' – makbol
它不会自行输出结果。例如,您必须将它们插入表或“dmbs_output.put_line”等。 – Ben