Mega Code Archive

 
Categories / Oracle PLSQL Tutorial / System Packages
 

Profiler for recursive function

SQL> SQL> exec dbms_profiler.start_profiler( 'factorial recursive' ) BEGIN dbms_profiler.start_profiler( 'factorial recursive' ); END; SQL> SQL> create or replace   2  function fact_recursive( n int ) return number   3  as   4  begin   5          if ( n = 1 )   6          then   7                  return 1;   8          else   9                  return n * fact_recursive(n-1);  10          end if;  11  end;  12  / Function created. SQL> begin   2      for i in 1 .. 50 loop   3          dbms_output.put_line( fact_recursive(50) );   4      end loop;   5  end;   6  / 30414093201713378043612608166064768844300000000000000000000000000 PL/SQL procedure successfully completed. SQL> SQL> exec dbms_profiler.stop_profiler PL/SQL procedure successfully completed. SQL>