0% found this document useful (0 votes)
92 views20 pages

Python Student Marks Management System

This document describes a Python project on student marks management. The project allows users to add, update, search and delete student records stored in a MySQL database. It provides a menu-driven interface and uses MySQL and Python connectivity modules.

Uploaded by

Nishtha Aggarwal
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)
92 views20 pages

Python Student Marks Management System

This document describes a Python project on student marks management. The project allows users to add, update, search and delete student records stored in a MySQL database. It provides a menu-driven interface and uses MySQL and Python connectivity modules.

Uploaded by

Nishtha Aggarwal
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

CAMBRIDGE INTERNATIONAL SCHOOL

INFORMATICS PRACTICES PROJECT FILE

A PROJECT OF PYTHON ON STUDENTS


MARKS MANAGEMENT

SUBMITTED BY- MEHUL AGGARWAL SUBMITTED TO- MS.PUJA VIRDI

CLASS: XII COMMERCE


CERTIFICATE

This is to certify that Mehul Aggarwal of class XIl Commerce has prepared the
report on the project entitled "STUDENTS MARKS MANAGEMENT". The report is
the result of his efforts and endeavours. The report is found worthy of acceptance
as final project report for the Informatics Practices of Class XIl. He has prepared
the report under my guidance.

____________________________________

Signature Of Teacher
ACKNOWLEDGEMENT

I would like to express a deep sense of thanks & gratitude to my project


guide Ms. Pooja Virdi immensely through the course of project. She
always evinced keen interest in my work. Her constructive advice &
constant motivation has been responsible for the successful completion
of this project. also thank to my parents for their motivation and support.
I must thank to my classmates as well. Last but not least; I would like to
thank all those who had supported me directly and indirectly in any
manner for completion of this project.

Mehul Aggarwal
XII Commerce
Index
1. About This Project 1
2. Coding 2-10
3. Output 11-15
4. Appendix 16
ABOUT THIS PROJECT

This project is designed to add a new student, update marks or details of existing
student, delete details or to delete the whole table; it is also capable of searching a
student's details.
This project is made by SQL DBMS and Python connectivity using
'mysql.connector" module. The module "sys" is used to provide access to some
variables used or maintained by the interpreter and to functions that interact
strongly with interpreter

1
CODING

#STUDENTS MARKS MANAGEMENT

import mysql.connector as sql

import sys

#connect to mysql database

db=sql.connect(host="localhost'",user="root",password="12345", database="mysql")

cursor-=db.cursor0)

#check database is connected

if db.is_connected():

print("Database connected")

#MENU FOR STUDENT MARKS MANAGEMENT SYSTEM

SOFTWARE

print('********************************************************************************************
*************")

print("WELCOME TO MY PROJECT STUDENT MARKS

MANAGEMENT SYSTEM")

print("******************************************************************************************

***")

2
print()

while(1):

print("1:TO CREATE TABLE FOR THE FIRST TIME")

print("2:TO DISPLAY TABLES OF DATABASE")

print("3:TO SHOW FIELDS OF TABLE")

print("4:TO DISPLAY ALL DATA")

print("5:TO ADD NEW STUDENT")

print("6:TO SEARCH A STUDENT RECORD")

print("7:TO CHANGE MARKS OF STUDENT")

print("8:TO DELETE STUDENT")

print("9:EXIT")

print()

ch=int(input("ENTER YOUR CHOICE"))

#Creating table for the first time

if ch==1:

try:

print(" Creating STUDENT table")

sql = "CREATE TABLE student(ROLL int(4) PRIMARY

KEY,name varchar(15) NOT NULL,class char(3) NOT NULL,sec

char(1),mark1 int(4),mark2 int(4),mark3 int(4),mark4

int(4),mark5 int(4),total int(4),per float(4);'

cursor.execute(sql)

mycon.commit()

3
except:

print("sorry some error occured")

#Displaying tables of database

if ch==2:

try:

cursor.execute("show tables")

for i in cursor:

print(i)

except:

print("sorry some error occured")

#Displaying Tables fields

if ch==3:

try:

table=input("enter table name")

cursor.execute("desc %s"%table)

for i in cursor:

print(i)

except:

print("sorry some error occured")

#Displaying all records of table

if ch==4:

try:

4
cursor.execute("select * from student"")

data=cursor.fetchall()

print("ROLL NO","STUDENT

NAME","CLASS","SECTION","SUBJECT1","SUBJECT2","SUBJEC

T3","SUBJECT4", "SUBJECT5","TOTALMARKS","PERCENTAGE")

for i in data:

j=str().split()

for k inj:

print(k,end=" ")

print()

except:

print("SORRY SOME ERROR OCCURED")

#inserting new record into table

if ch==5:

r=int(input("Enter student roll number")

name=input("ENTER STUDENT NAME")

c=input("ENTER CLASS OF STUDENT")

s=input("ENTER SECTION OF STUDENT")

m1=int(input("ENTER MARKS IN SUBJECT1")

m2=int(input("ENTER MARKS IN SUBJECT2")

m3=int(input("ENTER MARKS IN SUBJECT3"))

m4=int(input("ENTER MARKS IN SUBJECT4"))

5
m5=int(input("ENTER MARKS IN SUBJECT5")

t=m1+m2+m3+m4+m5

per=t/5

query="insert into student values(%d,'%s','%s', '%s', %d

6d,%d,%d,%d,%d,%d)"%%(r,name,c,s,m1,m2,m3,m4,m5,t,per

cursor.execute(query)

print("STUDENT RECORD SAVED IN TABLE")

db.commit()

#searching student details

if ch==6:

print("1:TO SERACH BY STUDENT ROLL NUMBER")

print("2:TO SEARCH BY STUDENT NAME")

c=int(input("ENTER YOUR CHOICE")

#searching by student roll number

if c==1:

try:

roll=int(input("ENTER STUDENT ROLL NUMBER TO

SEARCH"))

qry="select * from student where roll=%d"%roll

cursor.execute(qry)

data=cursor.fetchall()

if len(data)==0:

6
print("STUDENT NOT FOUND")

print("ROLL NO","STUDENT

NAME","CLASS", "SECTION","SUBJECT1", "SUBJECT2", "SUBJEC

T3" ,"SUBJECT4", "SUBJECT5", "TOTALMARKS","PERCENTAGE")

for i in data:

j=str(i).split()

for k in j:

print!k,end=" ")

print()

except:

print("SORRY SOME ERROR OCCURED")

#searching by student name

if c==2:

try:

name=input("ENTER STUDENT NAME TO SEARCH")

qry="select * from student where

name='%s"""%name

cursor.execute(qry)

data=cursor.fetchall()

if len(data)==0:

print("STUDENT NOT FOUND")

7
print("ROLL NO","STUDENT

NAME","CLASS","SECTION", "SUBJECT1", "SUBJECT2","SUBJEC

T3","SUBJECT4","SUBJECT5","TOTALMARKS", "PERCENTAGE""

for i in data:

j=str(i).split()

for K in j:

print(k,end=" “)

print()

except:

print("SORRY SOME ERROR OCCURED")

#TO update student marks

if ch==7:

try:

roll=int(input("ENTER ROLL NUMBER OF STUDENT

WHOSE MARKS TO BE UPDATE")

qry="select * from student where roll=%%d"%roll

cursor.execute(qry)

data=cursor.fetchal()

if len(data)==0:

print("STUDENT NOT FOUND")

else:

8
m1=int(input("ENTER UPDATED MARKS IN

SUBJECT1"))

m2=int(input("ENTER UPDATED MARKS IN

SUBJECT2"))

m3=int(input("ENTER UPDATED MARKS IN

SUBJECT3")

m4=int(input("ENTER UPDATED MARKS IN

SUBJECT4"))

m5=int(input("ENTER UPDATED MARKS IN

SUBJECT5"))

t=m1+m2+m3+m4+m5

per=t/5

qry="update STUDENT SET mark1=%d,mark2=

6d,mark3=%%d,mark4=%d,mark5=%%d,total=%d,per=%d where

roll=%d "9(m1,m2,m3,m4,m5,t,per,roll)

cursor.execute(qry)

print("STUDENT RECORD UPDATED")

db.commit()

except:

print("SORRY SOME ERROR OCCURED")

# Delete student record from table

if ch==8:

try:

9
roll=int(input("ENTER STUDENT ROLL NUMBER,YOU

WANT TO DELETE")

qry="select * from student where roll=%d"%%roll

cursor.execute(qry)

data=cursor.fetchal()

if len(data)==0:

print("STUDENT NOT FOUND IN TABLE")

else:

qry="delete from student where roll=%d"%(roll)

cursor.execute(qry)

print("STUDENT RECORD DELETED FROM TABLE")

db.commit()

except:

print("SORRY SOME ERROR OCCURED")

#Exit from program

if ch==9:

sys.exit()

db.close()

10
Output

11
12
13
14
15
Appendix
1) Informatics Practices with Sumita Arora
2) Informatics Practices with Preeti Arora
3) www.wikipedia.org

16

You might also like