CREATE OR REPLACE PROCEDURE exec(STRING IN varchar2) AS cursor_name INTEGER; ret INTEGER; str varchar2(500); BEGIN cursor_name := DBMS_SQL.OPEN_CURSOR; str:='create table test1 as select * from table_name';DDL statements are run by the parse call, which performs the implied commit. DBMS_SQL.PARSE(cursor_name, str, DBMS_SQL.native); ret := DBMS_SQL.EXECUTE(cursor_name); DBMS_SQL.CLOSE_CURSOR(cursor_name); END;
cursor_name INTEGER;
ret INTEGER;
str varchar2(500);
BEGIN
cursor_name := DBMS_SQL.OPEN_CURSOR;
str:='create table test1 as select * from table_name';DDL statements are run by the parse call, which performs the implied commit. DBMS_SQL.PARSE(cursor_name, str, DBMS_SQL.native);
ret := DBMS_SQL.EXECUTE(cursor_name);
DBMS_SQL.CLOSE_CURSOR(cursor_name);
END;