Stored Procedure Function Oracle PLSQL

SQL> create table myTable (
  2   tname varchar2(30),
  3   cname varchar2(30),
  4   changed date);
Table created.
SQL>
SQL> create or replace procedure RUN_DDL(m varchar2) is
  2   pragma autonomous_transaction;
  3   begin
  4   execute immediate m;
  5   end;
  6  /
Procedure created.
SQL>
SQL> create or replace procedure ADD_COLUMN(p_table varchar2, p_column varchar2) is
  2   v number;
  3   begin
  4       insert into myTable values (p_table, p_column, sysdate);
  5       run_ddl('alter table '||p_table||' add '||p_column);
  6       v := 1/0;
  7   end;
  8  /
Procedure created.
SQL> show errors
No errors.
SQL>
SQL> drop table myTable;
Table dropped.