Khi bạn đang chọn INTO một biến và không có bản ghi nào được trả về, bạn sẽ gặp lỗi KHÔNG TÌM HIỂU DỮ LIỆU. Tôi tin rằng cách chính xác để viết đoạn mã trên là bọc câu lệnh SELECT bằng khối BEGIN / EXCEPTION / END của riêng nó. Ví dụ:
...
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
...