0% found this document useful (0 votes)
25 views27 pages

Student Management System Project by Mohammad Shah Khan

The document outlines a project on a Student Management System developed by Mohammad Shah Khan for Delhi Public School, Bareilly, as part of his Computer Science curriculum. It details the project's objectives, features, and technical specifications, including the use of Python for the frontend and MySQL for the backend. The system aims to simplify student data management, automate record-keeping, and enhance accessibility while minimizing human error.
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)
25 views27 pages

Student Management System Project by Mohammad Shah Khan

The document outlines a project on a Student Management System developed by Mohammad Shah Khan for Delhi Public School, Bareilly, as part of his Computer Science curriculum. It details the project's objectives, features, and technical specifications, including the use of Python for the frontend and MySQL for the backend. The system aims to simplify student data management, automate record-keeping, and enhance accessibility while minimizing human error.
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/ 27

DELHI PUBLIC SCHOOL

BAREILLY

SESSION:-2024-25

COMPUTER SCIENCE
PROJECT ON
STUDENT MANAGENT
SYSTEM

SUBMITTED TO:- SUBMITTED BY:-


Mr. PANKAJ AGARWAL MOHAMMAD SHAH
(PGT COMPUTER SCIENCE) XII- PCM(A)
ACKNOWLEDGEMENT

I would like to thank our principal, Sir Mr.


V.K. Mishra, and my computer science
teacher, Mr. Pankaj Agarwal, in particular
for giving me the amazing opportunity to
work on this fantastic project, which also
assisted me in doing practical work and
allowed me to gain additional knowledge.

In addition, I want to express my gratitude


to my parents and friends for their
invaluable assistance in getting this project
done on time.
.

MOHAMMAD SHAH KHAN


XII- PCM(A)
CERTIFICATE
This certifies that Mohammed Shah Khan's
class XII-PCM(A) project on "STUDENT
MANAGEMENT SYSTEM," which he
turned in to DELHI PUBLIC SCHOOL,
Bareilly to partially fulfill the requirements
for the Senior Secondary in Computer
Science award, represents the fruit of his
own labor, which he completed under my
supervision and direction.
It is a noteworthy and instructive piece of
work that deserves approval

Mr. Pankaj Agarwal Mr. V.K. Mishra


(PGT Computer Science) (Principal)
STUDENT
MANAGEMENT
SYSTEM
TABLE OF CONTENTS

S.NO. TOPICS

1. PROJECT SYNOPSIS (Including


Tables & Fields required)

2. ABOUT FRONTEND (PYTHON)

3. ABOUT BACKEND(MySQL)

4. HARDWARE AND SOFTWARE


REQUIREMENTS

5. CODING

6 SCREENSHOTS

7. CONCLUSION

8. REFERENCES
PROJECT
SYNOPSIS
OBJECTIVE

->Simplifying the process of managing student data is the


primary goal of developing student information systems. This
will offer a practical method of preserving student data.

->With the help of this student management system, several


companies will be able to solve their current problems and
completely automate their manual record-keeping method. It
will simplify student record keeping for administrators in
schools.

-> There won't be much need for human interaction with this
user-friendly student management system. This lowers the
danger of records being lost and makes it easier for
organizations to register, update, and access records at any
time.

PROJECT CATEGORY

 Python programming and MySQL database.

RESOURCES USED

 Python IDLE
 MySQL 3.7
 Python and MySQL connector
PROJECT DESCRIPTION

->The purpose of the Student Management method is to


address the issues encountered while using a manual method.
The difficulties that the current system faces are meant to be
eliminated, and in certain circumstances, lessened, by this
program. Furthermore, this system was created specifically to
meet the needs of the company in order to run its operations
efficiently.
-> You can easily and automatically manage all of your
school records with the help of the Student Management
System software. This system keeps track of newly admitted
students, updated information, search parameters, and current
records. User will only view IDLE's console interface and be
presented with a number of alternatives, including:
 New admission
 Display details
 Search details
 Update student
 Sort student
 Delete student

->The MySQL database will be connected to IDLE, and the


user will be able to interact with it by executing the relevant
instructions based on their preference.
TABLES AND FIELDS REQUIRED

Number of tables required:1(student, Field name)

Fields:
FIELD NAME DATA TYPE
Admno Int(15)

Name Varchar(20)

Class Varchar(20)

City Varchar(20)

Date of birth(D.O.B) Date

SOME FEATURES OF THIS PROJECT


Following are the advantages of this project:-

1. Simple to manage a big quantity of records.


2. Totally safe.
3. Cut down on human labor and time.
4. Offers a specific student's searching capabilities.
5. Keeping track of student information.
6. Keeping track of the student organization's statistics.
7. Presenting the total number of pupils.
8. Better record-editing, adding, updating, and deleting leads
to appropriate school administration
ABOUT FRONTEND (PYTHON)

Designed in C, Python is an object-oriented programming language. It


is a high-level programming language by nature, enabling the design
of both straightforward and intricate processes.

HISTORY:

First developed at Stichting Mathematisch Centrum in the


Netherlands in the early 1990s, Python was a replacement for
an ABC language invented by Guido van Rossum. Although
there have been numerous contributions from other people,
Guido is still the main author of Python.
While working on Python at the Corporation for National
Research Initiatives in Reston, Virginia, in 1995, Guido van
Rossum produced multiple software versions.
The Be Open Python Labs team was established in May 2000
when Guido van Rossum and the Python core development
team relocated to BeOpen.com. The Python Labs team
relocated to Digital Creations, which later became Zope
Corporation, in October of that same year. The non-profit
Python Software Foundation was established in 2001 with the
express purpose of acquiring intellectual property connected
to Python. One of the PSF's sponsors was Zope Corporation.

STORY BEHIND THE NAME:

The Python programming language was named after the BBC


program "Monty Python's Flying Circus" by its developer, Guido van
Rossum. For food, snakes that entangle and crush prey with their
lengthy bodies are not his favorite kind of snakes.
FEATURES OF PYTHON:-

1. Free and Open Source


Free/Libré and Open Source Software (FLOSS) is exemplified by
Python. To put it simply, this software is freely distributable, readable
source code is available for anybody to alter, and portions of it may
be used in other free applications. The foundation of FLOSS is the
idea of a knowledge-sharing community. This is one of the main
reasons Python is so excellent—a community of people who merely
want to see a better Python is responsible for its creation and ongoing
improvement.
2. Simple and Easy
Languages like Python are straightforward and uncomplicated.
Almost like reading English, but very rigorous English, when you
read a decent Python program! Start-up costs for Python are
incredibly low. Python's syntax is quite easy to understand..
3. Interpreted
Compiling Python is not necessary for binary code. It merely executes
the software straight from the source. In order to run the source code,
Python internally transforms it into byte codes, an intermediate form,
and the computer's native language.
4. Portable
If you are cautious enough to stay away from any system-dependent
features, Python scripts can run on any platform without the need for
any modifications.
5. Extensive Libraries
In addition, Python has a large number of built-in modules and
libraries that enable it to handle a wide range of programming
languages, including Java, C, C++, and JSON..
6. Object Oriented
Both object-oriented and procedure-oriented programming are
supported in Python. Programs written in object-oriented languages
are structured around objects that combine functionality and data.
ABOUT BACKEND (MySQL)

Structured query language (SQL) serves as the foundation for


MySQL, a relational database management system (RDBMS) created
by Oracle.

Within the contemporary big data ecosystem, one of the most well-
known technologies is MySQL. It is obvious that everyone working
with enterprise data or general IT should at least strive for a basic
understanding of MySQL, which is sometimes referred to as the most
popular database and is currently enjoying extensive, effective use
across all industries. .

Many of the most widely used software stacks for creating and
managing everything from robust, data-driven B2B services to
customer-facing web applications depend heavily on MySQL. Due to
its open-source nature, stability, and extensive feature set—as well as
ongoing development and support from Oracle—many internet-
dependent companies, including Wikipedia, YouTube, Flickr,
Facebook, and Twitter, use MySQL backend.

Even people who are not familiar with relational systems may quickly
and easily create robust, safe, and quick data storage systems with
MySQL. The programming syntax and interfaces of MySQL serve as
ideal entry points to a variety of other well-liked structured data
storage and query languages.

FEATURES OF MYSQL:-

1. MySQL Is Easy To Use


While the relational structure of MySQL and the resulting inflexible
storage structures may appear limiting, the tabular paradigm is
arguably the most user-friendly and ultimately provides more
usefulness.
2. Compatible on Many Operating Systems
MySQL is compatible to run on many operating systems, like
Windows, Linux, etc.

3. Free and Open Source


Oracle's open-source MySQL code base is available for use,
modification, publication, and expansion by any person or
organization. The GNU General Public License is used to distribute
the program (GPL).
Enterprises can buy a commercially licensed version of MySQL from
Oracle if the code needs to be integrated or included in a commercial
application or if open-source software is not a priority.

4. Portable
MySQL also provides a facility that the clients can run on the same
computer as the server or on another computer.

5. Memory Efficiency
Its efficiency is high because it has a very low memory leakage
problem

6. High Flexibility
MySQL supports a large number of embedded applications, which
makes MySQL very flexible.

THE FUTURE OF MYSQL:-


The original goal of MySQL was to handle large databases more
quickly than previous database systems. For many years, MySQL was
utilized in rigorous operational, transactional, and production settings.
As computing and storage moved online, MySQL changed as well.
MySQL is an older technology when compared to many data
processing and storage options available today, yet it is still quite
useful and shows no indications of declining in popularity. Indeed,
because of its speed, dependability, user-friendliness, and broad
compatibility, MySQL has seen a recent renaissance, surpassing even
more specialized contemporary storage systems.
HARDWARE AND SYSTEM
REQUIREMENTS

OPERATING SYSTEM:-
WINDOWS 7 OR ABOVE

PROCESSOR: -
PENTIUM (ANY) OR AMD ATHALON (DUAL CORE)

RAM:-
4 GB (RECOMMENDED)

HARD DISK:-
6 GB (MINIMUM)

SOFTWARES:-
Front End: PYTHON 3.X
Back End: MySQL 5.X.X
CODING
import mysql.connector

def connect_to_database():

return mysql.connector.connect(

host="localhost",

user="root",

password="root",

database="school"

def create_table():

connection = connect_to_database()

cursor = connection.cursor()

cursor.execute("""

CREATE TABLE IF NOT EXISTS students (

class VARCHAR(10),

section VARCHAR(10),

rollno INT PRIMARY KEY,

name VARCHAR(100),

dob DATE,

father_name VARCHAR(100),

mother_name VARCHAR(100)

""")

connection.close()

def add_student():
connection = connect_to_database()

cursor = connection.cursor()

class_name = input("Enter Class: ")

section = input("Enter Section: ")

rollno = int(input("Enter Roll Number: "))

name = input("Enter Name: ")

dob = input("Enter Date of Birth (YYYY-MM-DD): ")

father_name = input("Enter Father's Name: ")

mother_name = input("Enter Mother's Name: ")

query = "INSERT INTO students (class, section, rollno, name, dob,


father_name, mother_name) VALUES (%s, %s, %s, %s, %s, %s, %s)"

data = (class_name, section, rollno, name, dob, father_name, mother_name)

cursor.execute(query, data)

connection.commit()

print("Student added successfully!")

connection.close()

def view_students():

connection = connect_to_database()

cursor = connection.cursor()

cursor.execute("SELECT * FROM students")

for student in cursor.fetchall():

print(student)

connection.close()
def sort_students():

connection = connect_to_database()

cursor = connection.cursor()

column = input("Enter column to sort by (class, section, rollno, name): ")

cursor.execute(f"SELECT * FROM students ORDER BY {column}")

for student in cursor.fetchall():

print(student)

connection.close()

def search_student():

connection = connect_to_database()

cursor = connection.cursor()

rollno = int(input("Enter roll number to search: "))

cursor.execute("SELECT * FROM students WHERE rollno = %s", (rollno,))

for student in cursor.fetchall():

print(student)

connection.close()

def update_student():

connection = connect_to_database()

cursor = connection.cursor()

rollno = int(input("Enter Roll Number to update: "))

column = input("Enter column to update (class, section, rollno, name, dob,


father_name, mother_name): ")

new_value = input("Enter new value: ")


query = f"UPDATE students SET {column} = %s WHERE rollno = %s"

cursor.execute(query, (new_value, rollno))

connection.commit()

print("Student updated successfully!")

connection.close()

def delete_student():

connection = connect_to_database()

cursor = connection.cursor()

rollno = int(input("Enter Roll Number to delete: "))

cursor.execute("DELETE FROM students WHERE rollno = %s", (rollno,))

connection.commit()

print("Student deleted successfully!")

connection.close()

def main():

create_table()

while True:

print("\nStudent Management System")

print("1. Add Student")

print("2. View Students")

print("3. Sort Students")

print("4. Search Student")

print("5. Update Student")


print("6. Delete Student")

print("7. Exit")

choice = int(input("Enter your choice: "))

if choice == 1:

add_student()

elif choice == 2:

view_students()

elif choice == 3:

sort_students()

elif choice == 4:

search_student()

elif choice == 5:

update_student()

elif choice == 6:

delete_student()

elif choice == 7:

print("Exiting")

break

else:

print("Invalid choice! Please try again.")

if __name__ == "__main__":

main()
Screenshots

Student management structure and function


->New admission

->View students

->Sort student
->search student

-> update student


->delete student

CONCLUSION
This Student management System provides a
simple way to manage student records using basic
programming concepts. It covers adding new
students, viewing all students, and searching for
specific students by ID or name. The program
ensures ease of use and demonstrates
fundamental programming structures, making it
suitable for educational purposes.
---------------------------------------------------
REFERENCES
-----------------------------------------------------
--Python documentation: Python.org
--Basic programming concepts for grades
11 and 12: [Educational websites and
textbooks]

You might also like