0% found this document useful (0 votes)
4 views

PLSQL_Procedures_Student_Table

The document outlines PL/SQL procedures for managing a Student table, including finding maximum marks, adding a grade column, assigning grades based on marks, retrieving students with marks above a specified student, and counting students with A+ grades and those who failed. It provides detailed SQL code for each procedure. The procedures enhance data handling and reporting capabilities for student performance.

Uploaded by

mk00047000
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

PLSQL_Procedures_Student_Table

The document outlines PL/SQL procedures for managing a Student table, including finding maximum marks, adding a grade column, assigning grades based on marks, retrieving students with marks above a specified student, and counting students with A+ grades and those who failed. It provides detailed SQL code for each procedure. The procedures enhance data handling and reporting capabilities for student performance.

Uploaded by

mk00047000
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

PL/SQL Procedures Based on Student Table

1. Find the maximum marks from the table:


CREATE OR REPLACE PROCEDURE Get_Max_Marks AS
max_marks NUMBER;
BEGIN
SELECT MAX(marks) INTO max_marks FROM Student;
DBMS_OUTPUT.PUT_LINE('Maximum Marks: ' || max_marks);
END;
/

2. Alter table to add a grade column and assign grade:


-- Alter the table to add a grade column
ALTER TABLE Student ADD grade VARCHAR2(5);

-- Procedure to assign grades


CREATE OR REPLACE PROCEDURE Assign_Grades AS
BEGIN
UPDATE Student
SET grade = CASE
WHEN marks >= 90 THEN 'A+'
WHEN marks >= 80 THEN 'A'
WHEN marks >= 70 THEN 'B'
WHEN marks >= 60 THEN 'C'
WHEN marks >= 50 THEN 'D'
WHEN marks >= 40 THEN 'E'
ELSE 'F'
END;
END;
/

3. Find students whose marks are greater than 'Ameen':


CREATE OR REPLACE PROCEDURE Get_Above_Ameen AS
ameen_marks NUMBER;
BEGIN
SELECT marks INTO ameen_marks FROM Student WHERE name = 'Ameen';

FOR rec IN (SELECT name, marks FROM Student WHERE marks > ameen_marks) LOOP
DBMS_OUTPUT.PUT_LINE('Name: ' || rec.name || ', Marks: ' || rec.marks);
END LOOP;
END;
/
4. Count students with A+ grade and those who failed (<40%):
CREATE OR REPLACE PROCEDURE Count_Grades AS
a_plus_count NUMBER;
fail_count NUMBER;
BEGIN
SELECT COUNT(*) INTO a_plus_count FROM Student WHERE grade = 'A+';
SELECT COUNT(*) INTO fail_count FROM Student WHERE marks < 40;

DBMS_OUTPUT.PUT_LINE('A+ Students: ' || a_plus_count);


DBMS_OUTPUT.PUT_LINE('Failed Students: ' || fail_count);
END;
/

You might also like