Når du vælger INTO en variabel, og der ikke returneres nogen poster, skulle du få fejlen NO DATA FOUND. Jeg tror, at den korrekte måde at skrive ovenstående kode på ville være at pakke SELECT-sætningen med sin egen BEGIN/EXCEPTION/END-blok. Eksempel:
...
v_final_grade NUMBER;
v_letter_grade CHAR(1);
BEGIN
BEGIN
SELECT final_grade
INTO v_final_grade
FROM enrollment
WHERE student_id = v_student_id
AND section_id = v_section_id;
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_final_grade := NULL;
END;
CASE -- outer CASE
WHEN v_final_grade IS NULL THEN
...