Create a cursor to show percentage grade of students

Q. Create a cursor to show percentage grade of students as given below:
< 40% FAIL
40 - 49.99% C
50 - 59.99% B
60 - 79.99% A
>= 80% HONOURS

                 
Answer:

Step 1: Create table Students.

ROLL_NONAMESECTIONCLASSORACLEDEV_2000
2Rajiv Chawla9025Student7585
3Pramila Bordes9025Working4545
4Nitish Bharadwaj9025Working6775
5Anita Sood9025Student8672
6Kalyani Deshmukh9025Working5565
7Rakesh Surana9025Working9595
8Alok Kumar Nath9025Working2540
9Sushmita Bannerjee9025Student7383

2. Create another table DIV_2000 to print the results.

CREATE TABLE Dev_2000_result ( ROll_NO Number (4), TOTAL Number (3), PERCENT Number (5,2), GRADE Varchar2 (10) )


Step2:

DECLARE v_student school%rowtype;
v_result oracle_result%rowtype;
grade varchar2(10);

CURSOR c1 IS
SELECT *
FROM SCHOOL;

BEGIN
FOR v_student IN c1 LOOP IF v_student.class='Working' THEN IF v_student.Dev_2000 <50 THEN grade:='FAIL';

ELSE grade:='PASS';
END IF;
elsif v_student.class='Student' THEN IF v_student.Dev_2000 >=80 THEN grade:='HONOURS';
elsif v_student.Dev_2000 >=60 THEN grade:='A';
elsif v_student.Dev_2000 >=50 THEN grade:='B';
elsif v_student.Dev_2000 >=40 THEN grade:='C';
ELSE grade:='B';
END IF;
END IF;  

INSERT INTO Dev_2000_result
VALUES(v_student.Roll_no,
       v_student.Oracle,
       v_student.Dev_2000,
       grade);

END LOOP;
END;
/


Output:

students percentage grade