Oracle GET_ERROR$
Version 11.2.0.3
 
General Information
Source {ORACLE_HOME}/rdbms/admin/initjvm4.sql
Package Header

Reformatted for readability
CREATE OR REPLACE PACKAGE get_error$ AS
  TYPE myrec IS RECORD (errormsg VARCHAR(4000));
  TYPE myrctype IS REF CURSOR RETURN myrec;

  FUNCTION error_lines(classname IN VARCHAR2) RETURN myrctype;
END get_error$;
/
Package Body

Reformatted for readability
CREATE OR REPLACE PACKAGE BODY get_error$ AS
 FUNCTION error_lines(classname IN VARCHAR2) RETURN myrctype IS
  rc         myrctype;
  short_name VARCHAR2(50);
  n          NUMBER;
 BEGIN
   OPEN rc FOR SELECT text FROM user_errors
   WHERE name = dbms_java.shortname(classname);

   RETURN rc;
 END;
END get_error$;
/
Dependencies
DBMS_JAVA USER_ERRORS
Security Model Execute is granted to PUBLIC
 
ERROR_LINES Demo
Function Demo get_error$.error_lines(classname IN VARCHAR2) RETURN myrctype;
SQL> SELECT name, count(*)
   2 FROM user_errors
   3 GROUP BY name
   4 ORDER BY 1;

NAME                             COUNT(*)
------------------------------ ----------
DBMS_LOGMNR_INTERNAL                   57
GET_MAX_CHECKPOINT                      1
LOGMNR_DICT_CACHE                      33
LOGMNR_GTLO3                            7
LOGMNR_KRVRDA_TEST_APPLY                1
LOGMNR_KRVRDLUID3                      17

set serveroutput on

DECLARE
 RetVal get_error$.myrcType;
 RetRec get_error$.myRec;
 x integer;

 TYPE array_t IS TABLE OF VARCHAR2(4000)INDEX BY BINARY_INTEGER;
 rec_array array_t;
BEGIN
  RetVal := get_error$.error_lines('LOGMNR_KRVRDLUID3');

  FETCH RetVal BULK COLLECT INTO rec_array;
  FOR i IN rec_array.FIRST .. rec_array.LAST LOOP
    dbms_output.put_line(rec_array(i));
  END LOOP;
END;
/
PLW-05018: unit LOGMNR_KRVRDLUID3 omitted optional AUTHID clause; default value DEFINER used
PLW-06010: keyword "NAME" used as a defined name
PLW-06009: procedure "LOGMNR_KRVRDLUID3" OTHERS handler does not end in RAISE or RAISE_APPLICATION_E
PLW-06009: procedure "EDIT_A_LOGMNR_TABLE" OTHERS handler does not end in RAISE or RAISE_APPLICATION
PLW-06009: procedure "CREATE_TRANSIENT_TABLES" OTHERS handler does not end in RAISE or RAISE_APPLICA
PLW-06009: procedure "DROP_TRANSIENT_TABLES" OTHERS handler does not end in RAISE or RAISE_APPLICATI
PLW-06009: procedure "DROP_TRANSIENT_TABLES" OTHERS handler does not end in RAISE or RAISE_APPLICATI
PLW-06009: procedure "CLEAN_TRANSIENTS" OTHERS handler does not end in RAISE or RAISE_APPLICATION_ER
PLW-06009: procedure "CLEAN_TRANSIENTS" OTHERS handler does not end in RAISE or RAISE_APPLICATION_ER
PLW-06009: procedure "PREPARE_LOAD_LOGMNR_DICTTABS" OTHERS handler does not end in RAISE or RAISE_AP
PLW-06009: procedure "RUN_LOAD_LOGMNR_DICTTABS" OTHERS handler does not end in RAISE or RAISE_APPLIC
PLW-06009: procedure "GETLUID" OTHERS handler does not end in RAISE or RAISE_APPLICATION_ERROR
PLW-07206: analysis suggests that the assignment to 'CUR' may be unnecessary
PLW-07206: analysis suggests that the assignment to 'CUR1' may be unnecessary
PLW-06002: Unreachable code
PLW-06002: Unreachable code
PLW-06002: Unreachable code
 
Related Topics
Exception Handling
 
Morgan's Library Page Footer
This site is maintained by Dan Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2013 Daniel A. Morgan All Rights Reserved