title: Oracle INVALID_NUMBER exception in my function does not work
body: <p>The Oracle function below assign 'A' to number variable.
  But the Exception clause does not catch <code>INVALID_NUMBER</code> system exception.</p>
  
  <pre><code>CREATE OR REPLACE FUNCTION TEST2
      (P1 IN VARCHAR2)
  RETURN NUMBER AS V_VALUE NUMBER;
  BEGIN
      SELECT(
          --SELECT 1/TO_NUMBER(P1)
          SELECT 'A'
          FROM DUAL
          )
      INTO V_VALUE
      FROM DUAL;
      RETURN V_VALUE;
  
      EXCEPTION
      WHEN INVALID_NUMBER THEN  -- If I change INVALID_NUMBER to OTHERS, then it works.
        RETURN -1;      
  END;
  /
  
  
  SELECT TEST2('1') FROM DUAL;
  </code></pre>
  
  <p>When I change <code>INVALID_NUMBER</code> to <code>OTHERS</code>, then it works.</p>
  
  <p>How to modify above code to chatch the <code>INVALID_NUMBER</code> exception?</p>