include::../description.adoc[]

== 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;
/
----

include::../exceptions.adoc[]

include::../see.adoc[]
