PL SQL Oracle PLSQL

SQL> CREATE TABLE MyTable (
  2    num_col    NUMBER,
  3    char_col   VARCHAR2(60)
  4    );
Table created.
SQL>
SQL> CREATE OR REPLACE FUNCTION LogParam(p1 IN NUMBER)
  2    RETURN NUMBER AS
  3    PRAGMA AUTONOMOUS_TRANSACTION;
  4  BEGIN
  5    INSERT INTO MyTable (num_col, char_col)
  6      VALUES (p1, 'Logged!');
  7    COMMIT;
  8    RETURN p1;
  9  END LogParam;
 10  /
Function created.
SQL>
SQL> SELECT LogParam(1) FROM dual;
SELECT LogParam(1) FROM dual
       *
ERROR at line 1:
ORA-00034: cannot COMMIT in current PL/SQL session
ORA-06512: at "RNTSOFT.LOGPARAM", line 7
SQL>
SQL> SELECT num_col
  2    FROM MyTable
  3    WHERE char_col = 'Logged!';
no rows selected
SQL>
SQL> drop table MyTable;
Table dropped.
SQL>
SQL>