System Packages Oracle PLSQL Tutorial

SQL>
SQL> CREATE OR REPLACE PROCEDURE assign (
  2     val_in IN VARCHAR2,
  3     varname_in IN VARCHAR2,
  4     trc IN BOOLEAN := TRUE)
  5  IS
  6     cur PLS_INTEGER := DBMS_SQL.OPEN_CURSOR;
  7     returnValue PLS_INTEGER;
  8     assign_string VARCHAR2(2000) := 'BEGIN ' || varname_in || ' := ''' || val_in || '''; END;';
  9  BEGIN
 10     IF trc THEN DBMS_OUTPUT.PUT_LINE (assign_string); END IF;
 11     DBMS_SQL.PARSE (cur, assign_string, DBMS_SQL.NATIVE);
 12     returnValue := DBMS_SQL.EXECUTE (cur);
 13     DBMS_SQL.CLOSE_CURSOR (cur);
 14  END;
 15  /
Procedure created.
SQL>