Cs Project1

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 30

COMPUTERSCIENCE

PROJECTFILE
PROJECT REPORT
ON
SCHOOL STUDENT MANAGEMENT
SYSTEM
COMPUTER SCIENCE
FOR
CLASS XII
(2022-23)
Submitted in partialfulfillment of the requirement of CBSE,Delhi

ASWIN PRADEEP

UNDER THE GUIDANCE OF


Mrs. D. SAKTHI PRIYA M.C.A., M.E., B.Ed.,
(P.G.T Computer Science)

Mahatma Global Gateway (CBSE)


Gopalakrishnan Guruvasal,
Veerapanchan, Madurai-625 020.
ACKNOWLEDGEMENT

At the outset I would like to take the opportunity of expressing my


sincere thanks to the Almighty for keeping me in good health all
through this gruelling project work.

I would like to express my special thanks to my worthy Academic


Director Mrs.P.Hamsa Priya, Principal Mrs. Meena Karuppiah and to
my teacher guide Mrs. D. Sakthi Priya who provided motivation and
valuable guidance to complete this project.

I got ample opportunity to do research which enriched my


knowledge and widen my thoughts in this arena. I am indebted to
them.

I would also like to thank my parents and friends who always


inspired and helped me to complete this project.

Signature of the student


CERTIFICATE

This is to certify that Mr.Aswin Pradeep of class XII of


Mahatma Global Gateway (CBSE), Madurai, has completed his
project file as a part of the paper of computer science under my
supervision. He has taken proper care and shown utmost
sincerity in the completion of this project.
I certify that this project is up to my expectation and as per
the guidelines issued by CBSE.

Signature of the Principal Signature of the Teacher In-charge


(Mrs.MeenaKaruppiah) (Mrs.D. SakthiPriya)

Submitted for the viva-voce examination held on , at


Mahatma Global Gateway (CBSE), Madurai.

Signature of the Examiner


INDEX

S.NO TOPIC

1 INTRODUCTION

2 OBJECTIVES AND SCOPEOF THE PROJECT

3 SCHOOL STUDENT RECORD MANAGEMENT

4 SYSTEM REQUIREMENTS

5 EXISTING PROJECT

6 PROPOSED SYSTEM

7 Languages Used

8 Modules & Functions Used

9 SOURCE CODE

10 OUTPUT

11 CONCLUSION

12 BIBILOGRAPHY
INDRODUCTION
A student information system (SIS), student management system, school
administration software or student administration system is a management
information system for education sector establishments used to manage
student data. It integrates students, parents, teachers and the administration.
Student information systems provide capabilities for registering students in
courses; documenting grading, transcripts of academic achievement and co-
curricular activities, and the results of student assessment scores; forming
student schedules; tracking student attendance; generating reports and
managing other student-related data needs in an educational institution.

Information security is a concern, as universities house an array of sensitive


personal information, making them potentially attractive targets for security
breaches, such as those experienced by retail corporations or healthcare
providers.

In this project we have focus on school students basic details like Roll No,
Student Name, Students Class, Students Section, and Fees

The project is based on simple school student management system. It has been
developed using Python-MySQL connectivity. This system can insert record,
display record, Search Record, Delete Record, Update Record
OBJECTIVES AND SCOPE OF THE PROJECT
The object of this project is simple to manage students details for any
educational sector and to let the students apply the programming knowledge into
a real- world situation/problem and exposed the students how programming
skills helps in developing a good software. To make the students understand how
a Education Sector manages a Students details.
 A program which is used to store students basic details
 A program which can add, remove, search, update and display the details
of students of that sector

The scope of the projects, this program can be used in all education sector and
similar sectors which can store a person’s details

This project with more advanced development can include GUI Interface with
several admin users, web connected, more detailed tables, more structures, and
info’s to be stored
SCHOOL STUDENT RECORD MANAGEMENT

About Project:
School student record managing is a practices of storing, tracking, and
controlling students fee data, this software can be used to manage students fee
list and basic details, used in all school and collage purposes
These are the following features available in this management system:
 Add Record
 Display Record
 Search Record
 Delete Record
 Update Record

SYSTEM REQUIREMENTS:
In order to make the entire experience simple, efficient and highly accessible to
all kinds of businesses, this program’s requirements will not be demanding, to
make compatibility with any computer plausible
Minimum Specifications:
1. Front-end software: Python 2.7
2. Back-end software: MySQL Server 5.7
3. System Memory (RAM): 2GB DDR3 @ 800MHz
4. Storage: 80GB SATA Hard-disk drive
EXISTING SYSTEM
Before all school students records were written down or been recorded in a
record book or an attendance with basic details.

Which make updating and managing the records were hard and storing the
record books physically took up space each year with new details of students.

With all these though searching the details later years was a very a hard task to
do looking around the record books for getting some information about the
student in case of need was a difficult task too, with no proper searching options,
people end up not finding one or getting some false details or spent a great time
to look up for the information.

Hence this method of recording students details are not effective and a time
consuming task
PROPOSED SYSTEM
The proposed solution is to eliminate the errors and hard work on this task to
make it very effective by storing the data in a database on a computer

The proposed system will use a easy to use and a user friendly Python Code
connected with a backend support of MySQL Database to store the details of
the students to make it way more effectively than the hand written record books.

This method will solve the major issues faced with the hand written record
books. Storing of larger data was solved, Storage of data which is digital and not
physically which makes the data safe and use to use anytime anywhere.
There will be no fear of data lose because this data can be replications any
number of time and can also be restored

Searching data among all these large made was easy with the help of computers
and MySQL Database
Languages Used
Python:
Python is a high-level, general-purpose programming language. Its
design philosophy emphasizes code readability with the use
of significant indentation. Python is dynamically-typed and garbage-
collected. It supports multiple programming paradigms,
including structured (particularly procedural), object-oriented and functi
onal programming. It is often described as a "batteries included"
language due to its comprehensive standard library.
Guido van Rossum began working on Python in the late 1980s as a successor to
the ABC programming language and first released it in 1991 as
Python 0.9.0. Python 2.0 was released in 2000 and introduced new features such
as list comprehensions, cycle-detecting garbage collection, reference counting,
and Unicode support. Python 3.0, released in 2008, was a major revision that is
not completely backward-compatible with earlier versions. Python 2 was
discontinued with version 2.7.18 in 2020.

Python consistently ranks as one of the most popular programming languages


USES:

 Python is used for Web Development


 Backend Support
 Python is useful for handling big data
 Basic programming
Python is popular because:

 Platform – Independent
 Readability
 Object Oriented Programming Language
 Higher Productivity
 Less Learning Time
 GUI Programming
 Ample Availability of Libraries
 Syntax Highlighting

Some limitations of Python:

 Python is slower
 Python is not very good for Mobile Development
 Memory Consumption
 Database Access
 Runtime Error

MySQL
MySQL is an open-source relational database management system (RDBMS). Its
name is a combination of "My", the name of co-founder Michael Widenius's
daughter My, and "SQL", the acronym for Structured Query Language. A
relational database organizes data into one or more data tables in which data may
be related to each other; these relations help structure the data. SQL is a
language programmers use to create, modify and extract data from the relational
database, as well as control user access to the database. In addition to relational
databases and SQL, an RDBMS like MySQL works with an operating system to
implement a relational database in a computer's storage system, manages users,
allows for network access and facilitates testing database integrity and creation
of backups.
MySQL is free and open-source software under the terms of the GNU General
Public License, and is also available under a variety of proprietary licenses.
MySQL was owned and sponsored by the Swedish company MySQL AB, which
was bought by Sun Microsystems (now Oracle Corporation). In 2010, when
Oracle acquired Sun, Widenius forked the open-source MySQL project to create
MariaDB.

MySQL has stand-alone clients that allow users to interact directly with a
MySQL database using SQL, but more often, MySQL is used with other
programs to implement applications that need relational database capability.
MySQL is a component of the LAMP web application software stack (and
others), which is an acronym for Linux, Apache, MySQL, Perl/PHP/Python.
MySQL is used by many database-driven web applications, including Drupal,
Joomla, phpBB, and WordPress. MySQL is also used by many popular websites,
including Facebook, Flickr, MediaWiki, Twitter, and YouTube.
Some points on MySQL:
 Large databases are handled by MySQL.
 Client/server and embedded systems can both use MySQL Server
 There are numerous platforms on which MySQL is compatible.
 In-memory heap tables can be used with MySQL.
 MySQL is fast, reliable, flexible, and simple to use.
Modules & Functions Used
The following modules are used in this program
 MySQL Connector:
A module that is used to connect Python to a MySQL server and enables
remote operation of the server and communication between the two.
 Time:
Python's time module makes it possible to utilize time in our program. It
enables features like obtaining the current time and stopping the program from
running, among others.

The following functions are used in this program


 print()
The print() function prints the specified message to the screen, or
other standard output device. The message can be a string, or any other
object, the object will be converted into a string before written to the
screen.
 connect()
The connect() method of Python's socket module, connects a
TCP(Transmission Control Protocol) based client socket to a TCP
based server socket. The connect() function initiates a
3-way handshake with the server socket and establishes the
connection.
 cursor()
It is an object that is used to make the connection for executing SQL
queries. It acts as middleware between SQLite database connection and
SQL query. It is created after giving connection to SQLite database.
 execute()
To execute a SQL query in Python, you'll need to use a cursor, which
abstracts away the access to database records. MySQL
Connector/Python provides you with the MySQLCursor class, which
instantiates objects that can execute MySQL queries in Python.
 commit()
commit() Method. This method sends a COMMIT statement to the
MySQL server, committing the current transaction. Since by default
Connector/Python does not autocommit, it is important to call this
method after every transaction that modifies data for tables that use
transactional storage engines.
 rollback()
The rollback() method is one among the various methods in Python
which is used to make the database transactions. Here, we will discuss
about the rollback() method. The rollback() method is used to revert the
last change or commit made to the database.
 sleep()
Python time sleep function is used to add delay in the execution of a
program. We can use python sleep function to halt the execution of the
program for given time in seconds. Notice that python time sleep
function actually stops the execution of current thread only, not the
whole program.
 lower()
The lower() method returns a string where all characters are lower
case. Symbols and Numbers are ignored.
Name of the database: SCHOOL
Name of the tables: STUDENT

SOURCE CODE:
Python Script : # To connect python with MySQL and Admin Login

import time
import mysql.connector

mydb = mysql.connector.connect(host = "localhost",user = "root",password


= "kannaNabi",database = "school")
cur = mydb.cursor()
exe = cur.execute()
exe("create database if not exists school") # creates "school" database if its
not exist
exe("use school")
exe("create table if not exist student(roll_no char(5), name varchar(5), class
int(3), section varchar(3), fees varchar(10))")

e = True
while e:
print("-------------------------------------------------------------")
user = input("[1] - UserName >> ").lower()
passwd = input("[2] - PassWord >> ").lower()
if user == "admin" and passwd == "admin":
print("\t\t>> successfully logged in <<")
print("-------------------------------------------------------------")
data()
else:
print(">> Invaild username or password try again")
print("-------------------------------------------------------------")
time.sleep(2)
e = True

Python Script: # To Add, Display, Search, Remove and Update the Data
a user definited function is made known data

def data():

print("\t\t >> Main Menu <<")

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

print("[1] - Add Data")

print("[2] - Display Data")

print("[3] - Search data")

print("[4] - Remove data")

print("[5] - Update Data")

wi = input(">> Enter your Choice >> ")

if wi == "1":

print("-------------------------------------------------------------")
roll = input("Roll no >> ")

name = input("Student Name >> ")

clas = input("Class >> ")

sec = input("Section >> ")

fee = input("Fees >> ")

try:

sql = "insert into student values()"

dat = (roll,name,clas,sec,fee)

exe(sql,dat)

mydb.commit()

print("\t\t>> Information saved <<")

except:

mydb.rollback()

elif wi == "2":

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

print("| Roll_No | Name | Class | Section | Fee |")

try:

exe("select * from student")

for i in (cur.fetchall()):

print(f"| {i[0]} | {i[1]} | {i[2]} | {i[3]} | {i[4]}")


except:

print("Error!!")

elif wi == "3":

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

roll = input("Enter Roll no to be displayed >> ")

exe("select * from student where roll_no ="+ roll)

w = cur.fetchall()

print(w)

elif wi == "4":

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

roll = input("Enter the Roll no to be deleted>> ")

exe("delete from student where roll_no =" + roll)

mydb.commit()

print("successfully deleted")

elif wi == "5":

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

roll = input("Enter the roll no to be updated >> ")

new_fee = input("Enter the new fee >>")

exe("update student set fee =" + new_fee + "where roll_no =" + roll)

w = exe("select * from student where roll_no =" + roll)


print(w)

print("\t\t>> Successfully Updated <<")

Final Code:
import time

import mysql.connector

def data():

print("\t\t >> Main Menu <<")

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

print("[1] - Add Data")

print("[2] - Display Data")

print("[3] - Search data")

print("[4] - Remove data")

print("[5] - Update Data")

wi = input(">> Enter your Choice >> ")


if wi == "1":

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

roll = input("Roll no >> ")

name = input("Student Name >> ")

clas = input("Class >> ")

sec = input("Section >> ")

fee = input("Fees >> ")

try:

sql = "insert into student values()"

dat = (roll,name,clas,sec,fee)

exe(sql,dat)

mydb.commit()

print("\t\t>> Information saved <<")

except:

mydb.rollback()

elif wi == "2":

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

print("| Roll_No | Name | Class | Section | Fee |")

try:
exe("select * from student")

for i in (cur.fetchall()):

print(f"| {i[0]} | {i[1]} | {i[2]} | {i[3]} | {i[4]}")

except:

print("Error!!")

elif wi == "3":

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

roll = input("Enter Roll no to be displayed >> ")

exe("select * from student where roll_no ="+ roll)

w = cur.fetchall()

print(w)

elif wi == "4":

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

roll = input("Enter the Roll no to be deleted>> ")

exe("delete from student where roll_no =" + roll)

mydb.commit()

print("successfully deleted")

elif wi == "5":

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

roll = input("Enter the roll no to be updated >> ")


new_fee = input("Enter the new fee >>")

exe("update student set fee =" + new_fee + "where roll_no =" + roll)

w = exe("select * from student where roll_no =" + roll)

print(w)

print("\t\t>> Successfully Updated <<")

mydb = mysql.connector.connect(host = "localhost",user = "root",password =


"kannaNabi",database = "school")

cur = mydb.cursor()

exe = cur.execute()

exe("create database if not exists school") # creates "school" database if its


not exist

exe("use school")

exe("create table if not exist student(roll_no char(5), name varchar(5), class


int(3), section varchar(3), fees varchar(10))")

e = True

while e:

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

user = input("[1] - UserName >> ").lower()

passwd = input("[2] - PassWord >> ").lower()

if user == "admin" and passwd == "admin":


print("\t\t>> successfully logged in <<")

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

data()

else:

print(">> Invaild username or password try again")

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

time.sleep(2)

e = True

Output:
CONCLUSION:
School Student Management System is a software made with the help of
Python and MySQL has been designed to replace the existing system of having
the hand written records of the School Students in a record book.

With my research, development and testing, this document and project will
help this existing problem to sort out this issue

BIBLIOGRAPHY:

 Computer Science with Python for Class 11 | Preeti Arora

 Computer Science with Python for Class 12 | Preeti Arora

 https://en.wikipedia.org/
 www.google.com

 www.stackoverflow.com

 www.w3schools.com

You might also like