Mega Code Archive

 
Categories / Oracle PLSQL / PL SQL
 

Create Dynamic Tables

CREATE OR REPLACE PROCEDURE CreateDynamicTables(   p_Method IN VARCHAR2) AS   v_CreateString1 VARCHAR2(100) := 'CREATE TABLE dbms_sql_table (f1 NUMBER)';   v_CreateString2 VARCHAR2(100) := 'CREATE TABLE native_table (f1 NUMBER)';   v_Dummy INTEGER;   v_CursorID INTEGER; BEGIN   IF p_Method = 'DBMS_SQL' THEN     v_CursorID := DBMS_SQL.OPEN_CURSOR;     DBMS_SQL.PARSE(v_CursorID, v_CreateString1, DBMS_SQL.NATIVE);     DBMS_SQL.CLOSE_CURSOR(v_CursorID);   ELSE     EXECUTE IMMEDIATE v_CreateString2;   END IF; END CreateDynamicTables; / exec CreateDynamicTables('DBMS_SQL') exec CreateDynamicTables('native') DROP TABLE dbms_sql_table; DROP TABLE native_table; --