ORA-62569: nested polymorphic table function is disallowed
create or replace package tq84_ptf_pkg authid definer as
function describe(tab in out dbms_tf.table_t) return dbms_tf.describe_t;
end tq84_ptf_pkg;
/
create or replace package body tq84_ptf_pkg as
function describe(tab in out dbms_tf.table_t) return dbms_tf.describe_t
is begin
return null;
end describe;
end tq84_ptf_pkg;
/
create or replace function tq84_ptf(tab table) return table pipelined row polymorphic using tq84_ptf_pkg;
/
This works:
select * from tq84_ptf(dual);
This throws ORA-62569: nested polymorphic table function is disallowed
select * from tq84_ptf(tq84_ptf(dual));
Nesting of PTFs is indirectly possible using the with clause:
with a as (select * from tq84_ptf(dual))
select * from tq84_ptf(a);