0% found this document useful (0 votes)
42 views26 pages

CS Final Project

The document describes a project on an Education Management System. The project aims to maintain and report student performance data. It allows adding, searching, updating and viewing student records and reports in a database using Python and MySQL.
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)
42 views26 pages

CS Final Project

The document describes a project on an Education Management System. The project aims to maintain and report student performance data. It allows adding, searching, updating and viewing student records and reports in a database using Python and MySQL.
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/ 26

CHENNAI PUBLIC SCHOOL

INVESTIGATORY PROJECT
COMPUTER SCIENCE
2020 -21
EDUCATION MANAGEMENT
SYSTEM

T.A.KESHAAV KUMAAR
XII ‘C’

1
CERTIFICATE

This is to certify that, T.A.KESHAAV KUMAAR, student of Class XII ‘C’,


Chennai Public School, Anna Nagar, has completed the project titled
EDUCATION MANAGEMENT SYSTEM during the academic year 2020-21
towards partial fulfillment of credit for the AISSCE Practical Evaluation,
under my supervision.

_______________ _______________
Mrs. Harsha Varun External Examiner
Computer Science Teacher

_______________________

Mrs. Asha Nathan


Principal School Seal

2
ACKNOWLEDGEMENT
First of all, I am immensely indebted to Almighty God of
blessing and Grace without which I could not have
undertaken this task and my efforts would never have been
a success.

I consider it a privilege and an honor to express my heartiest


and profound gratitude to Mrs. ASHA NATHAN, Principal of
our school, Mrs. HARSHA VARUN, Computer science
Teacher, for her appropriate direction, valuable suggestions
and judging assistance so generous extended to me. Her
observations, precious insights and comments have indeed
greatly helped to shape my ideas.

I wish to express my gratitude to Mrs. JAYALAKSHMI,


Computer Lab Assistant, for her involvement and sustained
guidance have been pivotal in my project work.

I express my sincerest gratitude to my beloved school for the


supervision and providing the required apparatus to perform
my project.

I also owe a sense of gratitude to my parents for giving me


their collaboration and support throughout this project.

3
TABLE OF CONTENTS
1.CASE STUDY
2.SOFTWARE USED
3.OPERATING INSTRUCTIONS
4.SOURCE CODE
5.SCREEN SHOTS
6.BIBLIOGRAPHY

4
CASE STUDY

The project named Examination Management


System software makes it easy to report the
performances and maintain the data of the
students in a file.
Aim: To maintain and report the performances of
students

The software basically focuses on basic operations


such as adding the report in a database,searching
for the reports and updating the reports and much
more.

5
SOFTWARE USED
Software:
 Python 3.9
 MySQL 8.0
Modules:
 MySQL Connector
Python File:
 Examination.py
Tables used (in MySQL):
 Student_Biodata

6
 Student_Result

7
OPERATING INSTRUCTION
On running the python program, A menu will be
displayed which consists of 7 options and the
options are as follows:
1. Adding Performance in the database.
2. Adding Biodata in the database.
3. Updating reports in the database.
4. Displays the report card of the student.
5. Viewing topper’s reports of students from
all sections.
6. Viewing student’s who had not cleared the
exams.
7. Removing the reports from the database.
On choosing any one of the above options, one will
be able to perform the desired action. The interface
is user friendly.
 When the user enters 1, the user will be
able to add the student’s performance into the
SQL table Student_Result.

8
 When the user enters 2, the user will be
able to add the student’s biodata into the SQL
table Student_Biodata.
 When the user enters 3, the user will be
able to update the student’s performance and
the updated data will be stored in the SQL table
Student_Result.
 When the user enters 4, the user will be
able to see the report card of particular student
which consists biodata as well as performance
of the student.
 When the user enters 5, the user will be
able to access the topper’s list .
 When the user enters 6, the user will be
able to access the list of all students who have
not cleared the exams.
 When the user enters 7, the user will be
able to remove the data of a particular student.

9
SOURCE CODE

import sys import


mysql.connector
mycon=mysql.connector.connect(host='localhost',user='ro
ot',passwd='kavi2005',database='Examination')
mycursor=mycon.cursor()

def student_result_profile():
a=int(input("Enter admission number:"))
cls=input("Enter class:") sec=input("Enter
section:") mat=int(input("Enter marks in
Math :")) che=int(input("Enter marks in
Chemistry :")) phy=int(input("Enter marks
in Physics :")) eng=int(input("Enter marks in
English :")) cs=int(input("Enter marks in C.S
:")) tot= int(mat+che+phy+eng+cs)
per= (tot/5)
query="insert into
student_result(Adm_no,Class,Section,Maths,Chemistry,Phys
ics,English,CS,Total,Percentage) values
({},'{}','{}',{},{},{},{},{},{},{})".format(a,cls,sec,mat,che,phy,eng,
cs,tot,per) mycursor.execute(query)

10
print("SUCESSFULLY INSERTED") mycon.commit()
mycon.close()
def student_biodata_profile():
a=int(input("Enter admission number:"))
nm=input("Enter the name :")
fnm=input("Enter Father's Name:")
mnm=input("Enter Mother's Name:")
cnm=int(input("Enter Contact Number :"))
dob=input("Enter Date Of Birth :")
eml=input("Enter Email :") bg=input("Enter
Blood Group :")
query="insert into
student_biodata(Adm_no,Name,Father_name,Mother_nam
e,Contact_no,DOB,Email,Blood_Group) values
({},'{}','{}','{}',{},'{}','{}','{}')".format(a,nm,fnm,mnm,cnm,dob,e
ml,bg) mycursor.execute(query) print("SUCESSFULLY
INSERTED") mycon.commit()
mycon.close()

def student_result_update():
try:
a=int(input("ENTER THE ADMISSION NUMBER OF
STUDENT :"))
query='select * from student_result where
Adm_no={}'.format(a)

11
mycursor.execute(query)
k=mycursor.fetchall() if k==[]:
print("no record found")
else:
m=int(input("ENTER MATHEMATICS MARKS:"))
c=int(input("ENTER CHEMISTRY MARKS:"))
p=int(input("ENTER PHYSICS MARKS:"))
e=int(input("ENTER ENGLISH MARKS:"))
Cs=int(input("ENTER COMPUTER MARKS:"))
t=int(m+c+p+e+Cs)
per=float(t/5)
query1="update student_result set
Maths={},Chemistry={},Physics={},English={},Cs={},Total={},Pe
rcentage={} where Adm_no={}".format(m,c,p,e,Cs,t,per,a)
mycursor.execute(query1)
print("SUCESSFULLY UPDATED")
mycon.commit()

except Exception as e:
print(e)

def student_result_student_biodata():
try:
query="select
student_biodata.name,student_result.Total,student_result.P
ercentage from student_result ,student_biodata where

12
student_result.Adm_no=student_biodata.Adm_no and
student_result.percentage >90;"
mycursor.execute(query)
a=mycursor.fetchall()
if a==[]:
print("No student found")
else:
for i in a:
print("NAME OF THE STUDENT : ",i[0])
print(" TOTAL MARKS : ",i[1])
print(" PERCENTAGE : ",i[2])

except Exception as e:
print(e)
mycon.commit()

def student_result_student_biodata_failure():
try:
query="select
student_biodata.name,student_result.Total,student_result.P
ercentage from student_result ,student_biodata where
student_result.Adm_no=student_biodata.Adm_no and
student_result.percentage <50;"
mycursor.execute(query)
a=mycursor.fetchall()

13
if a==[]:
print("No student found")
else:
for i in a:
print("NAME OF THE STUDENT : ",i[0])
print(" TOTAL MARKS : ",i[1])
print(" PERCENTAGE : ",i[2])

except Exception as e:
print(e)
mycon.commit()

def student_report(): print("PROVIDE THE


REQUIRED INFORMATION :") try:
a=input("ENTER THE ADMISSION NUMBER OF STUDENT
WHOSE REPORT CARD TO BE GENERATED :")
query="select student_biodata.Adm_no
,student_biodata.name,student_biodata.Father_Name,stud
ent_biodata.Mother_Name,student_biodata.Contact_no,stu
dent_biodata.DOB,student_biodata.Email,student_biodata.
Blood_Group,student_result.Class,student_result.Section,st
udent_result.Maths,student_result.Chemistry,student_resul
t.Physics,student_result.English,student_result.CS,student_r
esult.Total,student_result.Percentage from
student_biodata,student_result where

14
student_biodata.Adm_no=student_result.Adm_no and
student_biodata.Adm_no={}".format(a)
mycursor.execute(query) mydata=mycursor.fetchmany()
k=mydata
if k==[]:
print("NO RECORD FOUND")
else: for i in k:
a=i[0]
name=i[1]
father_name=i[2]
mother_name=i[3]
contact_no=i[4]
dob=i[5]
emailid=i[6]
blood_group=i[7]
Class=i[8]
section=i[9]
maths=i[10]
chemistry=i[11]
physics=i[12]
english=i[13]
cs=i[14] total=i[15]
percentage=i[16]
print(" -----------------------------------
BIODATA OF ",name,"------------------------------------")
print("ADMISSION NUMBER ",a)

15
print("CLASS- ",Class," ","SECTION - ",section)

print(" --------------------------------------------")

print("NAME OF THE STUDENT : ",name)


print("FATHER NAME : ",father_name)
print("MOTHER NAME : ",mother_name)
print("CONTACT NUMBER : ",contact_no)
print("DATE OF BIRTH : ",dob)
print("EMAIL ID : ",emailid) print("BLOOD GROUP
: ",blood_group)

print(" -----------------------------------REPORT
CARD OF ",name,"--------------------------------")

print("ADMISSION NUMBER ",a)


print("CLASS- ",Class," ","SECTION - ",section)

print(" --------------------------------------------")

print(" RESULT OF ANNUAL EXAM")

print(" --------------------------------------------")

16
print("MATHEMATICS : ",maths)
print("PHYSICS : ",physics) print("CHEMISTRY
: ",chemistry) print("ENGLISH : ",english)
print("COMPUTER SCIENCE : ",cs)
print("--------------------------------------------")
print("TOTAL : ",total)
print("PERCENTAGE : ",percentage,"%")
print("-----------------------------------THANK YOU---------
---------------------")
except exception as e:
print(e)

def student_remove(): print("PROVIDE THE


REQUIRED INFORMATION:") try:
a=int(input("ENTER ADMISSION NUMBER TO BE
DELETED:"))
query="delete student_result,student_biodata from
student_result inner join student_biodata on
student_result.Adm_no=student_biodata.Adm_no where
student_result.Adm_no={} ".format(a)
mycursor.execute(query)
print("SUCESSFULLY DELETED")
mycon.commit() except Exception
as e: print(e)

17
def close(): print("-------------------
THANK YOU FOR USING THE
APPLICATION------------------")
sys.exit()

print(" WELCOME TO EXAMINATION


MODULE SYSTEM ") while (True):
print('PRESS 1 TO CREATE A STUDENT PROFILE')
print('PRESS 2 TO CREATE A STUDENT BIODATA
PROFILE') print('PRESS 3 TO UPDATE THE STUDENT
PROFILE') print('PRESS 4 TO GENERATE REPORT
CARD') print('PRESS 5 TO GENERATE TOPPER
CANDIDATE') print("PRESS 6 TO GENERATE
CANDIDATE WHO GOT LESS THAN 50%")
print('PRESS 7 TO DELETE THE RECORD')
print('PRESS 8 TO EXIT THE APPLICATION')

choice=int(input('ENTER YOUR CHOICE : '))


if(choice==1):
student_result_profile()
elif(choice==2):
student_biodata_profile()
elif(choice==3):

18
student_result_update()
elif(choice==4):
student_report()
elif(choice==5):
student_result_student_biodata()
elif(choice==6):
student_result_student_biodata_failure()
elif(choice ==7):
student_remove()
elif(choice==8):
close()

19
SCREENSHOTS
1. Main menu:

2. Adding the student’s performance into the SQL


table Student_Result:

20
3. Adding the student’s biodata into the MySQL table
Student_Result:

4. Update the student’s performance and the


updated data will be stored in the SQL table
Student_Result:

21
5. To generate the report card of particular student which
consists biodata as well as performance of the student:

22
6.Viewing topper’s reports of students from all sections:

7.Viewing low achievers:

23
8.Removing the reports from the database:

24
Bibliography
 https://python4csip.com/
 https://cbseacademic.nic.in/web_material
/doc/cs/2_Computer_Science_Python_ClassXI
I .pdf

25
26

You might also like