0% found this document useful (0 votes)
34 views39 pages

Vansh Kumar

Uploaded by

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

Vansh Kumar

Uploaded by

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

KENDRIYA VIDYALAYA NO.

1 GAYA

BAGESHWARI ROAD,GAYA

A Project Report On
STUDENT REPORT CARD MANAGEMENT SYSTEM

FOR AISSCE 2021


As a part of the CompUter Science
CoUrse (083)
SUBMITTED BY:

VANSH KUMAR

XII ‘B’

_______________

Under the Guidance Of:


Mr.Narendra Kumar
PGT (Computer Science)

[Type text] Page 1


CERTIFICATE
This is to certify that the Project entitled ,“Student
Report Card Management system” is a bona-fide
work done by VANSH KUMAR ,Roll no. of class
XII B of academic session 2024-25 in partial
fulfillment of CBSE’s AISSC Examination 2025 and
has been carried out under my direct supervision
and guidance. This Report or a similar report on this
topic has not been submitted for any other
examination and does not form a part of any other
course undergone by the candidate.

…………………………… …………………………
Signature of Student ( Narendra
Kumar)
Name: VANSH KUMAR PGT (Computer
Science)

[Type text] Page 2


Roll No:

Signature Of Principal

Examiner

[Type text] Page 3


ACKNOWLEDGMENT
I am extremely grateful to Mr.
Narendra Kumar, Teacher of
Department of Computer Science for his
able guidance and useful suggestions,
which helped me in completing the
project work, in time.
I would also like to thank Mr Ashok
Kumar Gupta Our Principal SIR and all
other teaching and non-teaching staff of
Computer Science department who
helped me directly or indirectly in the
completion of this project.
Finally, yet importantly, I would like to
express my heartfelt thanks to my
beloved parents for their blessings, my
friends/classmates for their help and
wishes for the successful completion of
this project.

VANSH KUMAR
[Type text] Page 4
Introduction
Content
Objective Pages
About Python/My SQL
Module Used
SQL Tables
INDEX
System requirements
Source Code
Output
Limitations and Upgradation
Bibliography

10)
[Type text]
BibliographyPage 5
INTRODUCTION
The project titled “Student Report Card Management
System” is a program for monitoring and controlling the
records of a Student. This project is designed & coded in
Python 3 and database management is handled by
MYSQL.

This program mainly focuses on basic operations like


creating a profile for new student, searching details and
marks of a student and updating records/details of a
student, The Student Management System is a Python
program written on 64 bits, windows 10, designed to help
school management to maintain and organize a student’s
detail with ease.

This programme is easy to use for both beginners and


advanced users. It features a familiar and simple, user
interface, combined with strong searching, insertion and
reporting capabilities. The report generation facility helps
to get a good idea of which

[Type text] Page 6


OBJECTIVES
i. To reduce time for the Institution
ii. To increase efficiency and
accuracy of the system
iii. To reduce pressure on the
management and relieving man
power from repetitive and dull
job
iv. To make the retrieval of information
faster
v. To make the system more feasible
vi. To reduce large amount of paper work
vii. To make the system more reliable
to avoid any ambiguity.
viii. To make the system more flexible.

[Type text] Page 7


About PYTHON

Python is an easy to learn, powerful


programming language. It has efficient high-
level data structures and a simple but
effective approach to object- oriented
programming. Python's elegant syntax and
dynamic typing, together with its interpreted
nature, makes it an ideal language for
scripting and rapid application development
in many areas on most platforms.

Features of Python:
i. Simple
ii. Easy to Learn
iii. Free and Open Source
iv. Object Oriented
v. Extensive Libraries
vi. Embeddable

[Type text] Page 8


[Type text] Page 9
About SQL
 MySQL is a freely available open source Relational Database Management
System (RDBMS) that uses Structured Query Language (SQL). SQL is the most
popular language for adding, accessing and managing content in a database. It is
most noted for its quick processing, proven reliability, ease and flexibility of use.

 It offers advanced features and reliability far beyond a typical freeware project.
Successful companies such as Verizon, Netflix, and Twitter rely
on MySQL databases to power their businesses. In addition to being free, another
very appealing aspect of MySQL is its open source nature.

 MySQL is a relational database management system (RDBMS) based on the SQL


(Structured Query Language) queries. It is one of the most popular languages for
accessing and managing the records in the table. MySQL is open-source and free
software under the GNU license.

[Type text] Page 10


MODULES
USED

The following modules were used in making of this


program:

 mysql.connector

mysql.connector – It is a module of python which helps in the


connection of Python with My SQL. It is not an inbuilt module.

[Type text] Page 11


SQL Tables

[Type text] Page 12


SYSTEM REQUIREMENTS
 HARDWARE REQUIRED:

[Type text] Page 13


 Computer
a) Ram-at least 1gb
b) Processor-Intel Atom/I3 or above
c) HDD-20Gb+
 Printer
 Compact Disk

 SOFTWARE REQUIRED:

 Operating System: Windows 7 or later


 Python 3 or above
 Ms Word
 MySQL

[Type text] Page 14


Source Code

[Type text] Page 15


print()
print()
print('''
******************************************************************
\t STUDENT REPORT CARD MANAGEMENT SYSTEM

******************************************************************''')
print()
#============================ sql
connection
==================================
import mysql.connector as mc
connect=''
try:
db=mc.connect(host="localhost",user
="root",password="jaihind",database="result")
cur=db.cursor()
connect='ok'
except:
print('====connection to sql failed====')
print('...Program not connected to sql please check
program and database.....')
if connect=='ok':
cur.execute('show tables')
rec=cur.fetchall()
table=''
if ('details',) in rec:
if ('marks',) in rec:
if ('result',) in rec:
table='ok'
else:
print('Tables not found in my sql please check
correctly')
[Type text] Page 16
#=========================== functions
===================================
===
def insert_details():
roll=int(input('Enter roll no of student;'))
sql='select * from details where roll=%s'
w data=(roll,)
cur.execute(sql,data)
record=cur.fetchall()
if len(record)!=0:
print('Record already exist for this roll no;')
else:
while True:
name=input('Enter name of student;')
mot=input('Enter mother\'s name;')
ft=input('Enter father\'s name;')
dob=input('Enter date of birth;')
sql1='insert into details values(%s,%s,%s,%s,%s)'
data1=(mot,ft,dob,roll,name)
cur.execute(sql1,data1)
db.commit()
ch=input('Do you want to enter more record
say(y/n)')
if ch=='y' or ch=='Y':
continue
elif ch=='n' or ch=='N':
print('Record sucessfully inserted...')
break
else:
print('Enter right choice.....')
w
def display_details():
roll=int(input('Enter roll no of student for display
[Type text] Page 17
details;'))
sql='select * from details where roll=%s'
data=(roll,)
cur.execute(sql,data)
record=cur.fetchall()
if len(record)==0:
print('NO record found for this roll no;')
else:
print('[Mother\'s name,Father\'s name,DOB,Roll
no,Name]')
print(record)
def modify_details():
roll=int(input('Enter roll no of student for modify/delete
details;'))
sql='select * from details where roll=%s'
data=(roll,)
cur.execute(sql,data)
record=cur.fetchall()
if len(record)==0:
print('NO record found for this roll no;')
else:
cho=input('Do you want to delete or modify record;')
if cho=='delete' or cho=='Delete':
sql='delete from details where roll=%s'
data=(roll,)
cur.execute(sql,data)
db.commit()
print('Record sucessfully deleted.....')
elif cho=='modify' or cho=='Modify':
chi=input('what you want to modify-\n1.Name\
n2.Mother\'s name\n3.Father\'s name\n4.D.O.B\n')
if chi=='1':
name=input('Enter new name of student ;')
[Type text] Page 18
sql='update details set name=%s where roll=
%s'
data=(name,roll)
cur.execute(sql,data)
db.commit()
print('Record sucessfully modify.....')
elif chi=='2':
mot=input('Enter new mother\'s name;')
sql='update details set mother_name=%s where
roll=%s'
data=(mot,roll)
cur.execute(sql,data)
db.commit()
print('Record sucessfully modify.....')
elif chi=='3':
ft=input('Enter new father\'s name;')
sql='update details set father_name=%s where
roll=%s'
data=(ft,roll)
cur.execute(sql,data)
db.commit()
print('Record sucessfully modify.....')
elif chi=='4':
dob=input('Enter new date of birth;')
sql='update details set d_o_b=%s where roll=
%s'
data=(dob,roll)
cur.execute(sql,data)
db.commit()
print('Record sucessfully modify.....')
else:
print('Enter right choice.....')
[Type text] Page 19
else:
print('Enter right choice.....')
def insert_marks():
roll=int(input('Enter roll no of student for insert marks;'))
sql='select * from details where roll=%s'
data=(roll,)
cur.execute(sql,data)
record=cur.fetchall()
if len(record)==0:
print('NO record found for this roll no;')
else:
ms1=int(input('Enter marks of English;'))
ms2=int(input('Enter marks of Hindi;'))
ms3=int(input('Enter marks of Math;'))
ms4=int(input('Enter marks of Science;'))
ms5=int(input('Enter marks of Social Science;'))
ms6=int(input('Enter marks of computer;'))
sql1='insert into marks values(%s,%s,%s,%s,%s,%s,
%s)'
data1=(ms1,ms2,ms3,ms4,ms5,ms6,roll)
cur.execute(sql1,data1)
db.commit()
print('Record sucessfully inserted....')
def display_marks():
roll=int(input('Enter roll no of student for display
marks;'))
sql='select * from marks where roll=%s'
data=(roll,)
cur.execute(sql,data)
record=cur.fetchall()
if len(record)==0:
[Type text] Page 20
print('NO record found for this roll no;')
else:
print('[English,Hindi,Math,Science,social,computer]')
print(record)
def modify_marks():
roll=int(input('Enter roll no of student for modify/delete
marks;'))
sql='select * from marks where roll=%s'
data=(roll,)
cur.execute(sql,data)
record=cur.fetchall()
if len(record)==0:
print('NO record found for this roll no;')
else:
cho=input('Do you want to delete or modify marks;')
if cho=='delete' or cho=='Delete':
sql='delete from marks where roll=%s'
data=(roll,)
cur.execute(sql,data)
db.commit()
print('Record sucessfully delete.....')
elif cho=='modify' or cho=='Modify':
chi=input('what you want to modify marks of -\
n1.English\n2.Hindi\n3.Maths4.Science\n5.Social\
n6.Computer\nEnter-')
if chi=='1':
ms1=int(input('Enter marks of English;'))
sql='update marks set english=%s where roll=
%s'

data=(ms1,roll)
cur.execute(sql,data)
db.commit()
[Type text] Page 21
print('Record sucessfully modify.....')
elif chi=='2':
ms2=int(input('Enter marks of Hindi;'))
sql='update marks set hindi=%s where roll=%s'
data=(ms2,roll)
cur.execute(sql,data)
db.commit()
print('Record sucessfully modify.....')
elif chi=='3':
ms3=int(input('Enter marks of Math;'))
sql='update marks set maths=%s where roll=
%s'
data=(ms3,roll)
cur.execute(sql,data)
db.commit()
print('Record sucessfully modify.....')
elif chi=='4':
ms4=int(input('Enter marks of Science;'))
sql='update marks set science=%s where roll=
%s'
data=(ms4,roll)
cur.execute(sql,data)
db.commit()
print('Record sucessfully modify.....')
elif chi=='5':
ms5=int(input('Enter marks of Social;'))
sql='update marks set sst=%s where roll=%s'
data=(ms5,roll)
cur.execute(sql,data)
db.commit()
print('Record sucessfully modify.....')
elif chi=='6':
[Type text] Page 22
ms6=int(input('Enter marks of computer;'))
sql='update marks set computer=%s where
roll=%s'
data=(ms6,roll)
cur.execute(sql,data)
db.commit()
print('Record sucessfully modify.....')
else:
print('Enter right choice.....')
else:
print('Enter right choice.....')

def result_creator():
total=0
count=0
percentage=0
roll=int(input('Enter roll no of student for result
creation;'))
sql='select * from marks where roll=%s'
data=(roll,)
cur.execute(sql,data)
record=cur.fetchall()
if len(record)==0:
print('Record not found for this roll no;')
else:
sql='select * from result where roll=%s'
data=(roll,)
cur.execute(sql,data)
record=cur.fetchall()
if len(record)!=0:
print('Result already created...')
else:
[Type text] Page 23
sql='select * from marks where roll=%s'
data=(roll,)
cur.execute(sql,data)
record=cur.fetchall()
for i in range(len(record[0])-1):
total+=int(record[0][i])
if record[0][i]<33:
count+=1
if count>=2:
status='FAIL'
else:
status='PASS'
percentage=str(total/5)
sql='insert into result values(%s,%s,%s,%s)'
data=(percentage,total,roll,status)
cur.execute(sql,data)
db.commit()
print('Result sucessfully created...')

def display_result():
cho=input('Want to see all result say(y/n);')
if cho=='Y' or cho=='y':
cur.execute( 'select * from details,marks,result where
details.roll=marks.roll=result.roll;')
record=cur.fetchall()
for rec in record:
print('
_________________________________________________')
print('|')
print('| student name : ','\t',rec[4])
print('| roll : ','\t',rec[3])
print('| date of birth: ','\t',rec[2])
print('| mother\'s name : ','\t',rec[0])
[Type text] Page 24
print('| father\'s name : ','\t',rec[1])
print('|................................................')
print('| subject marks')
print('|................................................')
print('| science : \t',rec[8])
print('| hindi : \t',rec[6])
print('| social studies :\t',rec[9])
print('| maths : \t',rec[7])
print('| computer : ','\t',rec[10])
print('| englis : \t',rec[5])
print('| total : \t',rec[13])
print('| percent : \t',rec[12],'%')
print('| status : \t',rec[15])

elif cho=='N' or cho=='n':


roll=int(input('Enter roll no of student for display
result;'))
sql=' select * from details,marks,result where
details.roll=%s=marks.roll=result.roll;'
data=(roll,)
cur.execute(sql,data)
rec=cur.fetchall()
if len(rec)==0:
print('NO record found for this roll no;')
else:
print('
_________________________________________________')
print('|')
print('| student name : ','\t',rec[0][4])
print('| roll : ','\t',rec[0][3])
print('| date of birth: ','\t',rec[0][2])
print('| mother\'s name : ','\t',rec[0][0])
[Type text] Page 25
print('| father\'s name : ','\t',rec[0][1])
print('| science : \t',rec[0][8])
print('| hindi : \t',rec[0][6])
print('| social studies :\t',rec[0][9])
print('| maths : \t',rec[0][7])
print('| computer : ','\t',rec[0][10])
print('| englis : \t',rec[0][5])
print('| total : \t',rec[0][13])
print('| percent : \t',rec[0][12],'%')
print('| status : \t',rec[0][15])
if connect=='ok' and table=='ok':
while True:
print('|....................................|')
print('| ******MENU FOR OPERATION****** |')
print('|....................................|')
print('| 1.To insert |')
print('|....................................|')
print('| 2.To display |')
print('|....................................|')
print('| 3.To modify/delete |')
print('|....................................|')
print('| 4.To create result |')
print('|....................................|')
print('| 5.To displsy result |')
print('|....................................|')
print('| 6.EXIT |')
print('|.....................................')
cho=int(input('Enter your choice(1,2,3,4,5,6);'))
if cho==1:
while True:
print('|....................................|')
print('| *****SUBMENU FOR OPERATION***** |')
[Type text] Page 26
print('|....................................|')
print('| 1.To insert details of student |')
print('|....................................|')
print('| 2.To insert marks of student |')
print('|....................................|')
print('| 3.EXIT |')
print('|....................................|')
cho=int(input('Enter your choice(1,2,3);'))
if cho==1:
insert_details()
elif cho==2:
insert_marks()
elif cho==3:
break
else:
print('Enter right choice...')
elif cho==2:
while True:
print('|....................................|')
print('| *****SUBMENU FOR OPERATION***** |')
print('|....................................|')
print('| 1.To display details of student |')
print('|....................................|')
print('| 2.To display marks of student |')
print('|....................................|')
print('| 3.EXIT |')
print('|....................................|')
cho=int(input('Enter your choice(1,2,3);'))
if cho==1:
display_details()
elif cho==2:
display_marks()
[Type text] Page 27
elif cho==3:
break
else:
print('Enter right choice...')
elif cho==3:
while True:
print('|.....................................|')
print('| *****SUBMENU FOR OPERATION*****
|')
print('|.....................................|')
print('|1.To modify/delete details of student|')
print('|.....................................|')
print('|2.To modify/delete marks of student |')
print('|.....................................|')
print('|3.EXIT |')
print('|.....................................|')
cho=int(input('Enter your choice(1,2,3);'))
if cho==1:
modify_details()
elif cho==2:
modify_marks()
elif cho==3:
break
else:
print('Enter right choice...')
elif cho==4:
result_creator()
elif cho==5:
display_result()
elif cho==6:
break
else:
[Type text] Page 28
print('Enter right choice...')

[Type text] Page 29


OUTPUT

[Type text] Page 30


[Type text] Page 31
[Type text] Page 32
[Type text] Page 33
[Type text] Page 34
[Type text] Page 35
[Type text] Page 36
LIMITATIONS AND
UPGRADATIONS

*Limitations:
 Records of only one student can be modified at a time.
 Results of multiple students can't be displayed at once.
 Multiple Databases can’t be used together.

*Upgradations:
The following upgradations can be made in future:
 Attendance record maintenance and attendance
calculator.
 FEE details maintenance.
 GUI Interface.
 Option to Print the result of a student.

[Type text] Page 37


BIBLIOGRAPHY

 w3schools.com
 pythoninstitUte.org
 Computer Science with Python by Sumita
Arora

[Type text] Page 38

You might also like