Mega Code Archive

 
Categories / Oracle PLSQL / PL SQL
 

Build up the CREATE TABLE statement and run it with EXECUTE IMMEDIATE

SQL> SQL> SET ECHO ON SQL> SQL> CREATE OR REPLACE PROCEDURE make_mytable (   2      username IN VARCHAR2   3  ) AS   4      create_stmt     VARCHAR2(200);   5  BEGIN   6      create_stmt := 'CREATE TABLE '   7                     || username || '.mytable'   8                     || '(myrow NUMBER, mydesc VARCHAR2(50))';   9  10      EXECUTE IMMEDIATE create_stmt;  11  END;  12  / Procedure created. SQL> SQL> SQL> --