When exceptions occur, it is usually a bad idea to simply ignore them. Instead, it is better to handle them properly, or at least to log them.
Noncompliant code example
SET SERVEROUTPUT ON
DECLARE
d VARCHAR2(1);
BEGIN
SELECT dummy INTO d FROM DUAL WHERE dummy = 'Y'; -- Will raise NO_DATA_FOUND
DBMS_OUTPUT.PUT_LINE('d = ' || d);
EXCEPTION
WHEN NO_DATA_FOUND THEN -- Noncompliant, did we really want to mask this exception?
NULL;
END;
/
Compliant solution
SET SERVEROUTPUT ON
DECLARE
d VARCHAR2(1);
BEGIN
SELECT dummy INTO d FROM DUAL WHERE dummy = 'Y'; -- Will raise NO_DATA_FOUND
DBMS_OUTPUT.PUT_LINE('d = ' || d);
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('Error: No data found');
END;
/