Home
Overridden Predefined Exceptions
Rule description
- Predefined exceptions should not be overridden
Non-compliant Code Example
DECLARE
NO_DATA_FOUND EXCEPTION; --Non compliant code (Predefined exceptions is override)
BEGIN
FOR i IN 1 .. CUSTOMER_TABLE.COUNT
LOOP
IF CUSTOMER_TABLE(i) IS NOT NULL THEN
DBMS_OUTPUT.PUT( i || ' = (' || CUSTOMER_TABLE(i).Name || ', ' || CUSTOMER_TABLE(i).PhoneNumber || ')' );
END IF;
END LOOP;
EXCEPTION
WHEN NO_DATA_FOUND THEN
Log_Errors ( 'No data found');
WHEN ERRORS THEN
Log_Errors ( 'Error Log...' || Chr(10) ||
DBMS_UTILITY.FORMAT_ERROR_STACK() );
Log_Errors ( 'Error Log...' || Chr(10) ||
DBMS_UTILITY.FORMAT_ERROR_BACKTRACE() );
DBMS_OUTPUT.PUT_LINE ( '----------' );
RAISE;
END CUSTOMER_TABLE_ITERATION;