PL SQL Statements Oracle PLSQL Tutorial

SQL>
SQL> declare
  2      a NUMBER:=2;
  3      b NUMBER:=3;
  4      v_plsql_tx VARCHAR2(2000);
  5  begin
  6      v_plsql_tx := 'BEGIN ' || ' :1 := :1 + :2; ' || 'END;';
  7      execute immediate v_plsql_tx
  8      using in out a, b;
  9      DBMS_OUTPUT.put_line('a='||a);
 10  end;
 11  /
a=5
PL/SQL procedure successfully completed.
In dynamic PL/SQL blocks, Oracle counts only unique bind variables and associates them with arguments in the order of their appearance.