TABLE OF CONTENT
S.NO TOPICS
1) PYTHON SYNOPSIS
!) ABOUT FRONTED
(PYTHON)
8) ABOUT BACKEND
(PYTHON)
HARDWARE AND
4) SOFI'WARR
REQUIREMENTS
5) CODIN6
ADVANTA6ES AND
6)
FUTURE SCOPE
7) CONCLUSION
PYTHON SYNOPSIS
OBJECTIVE
The main objective to develop School Management System is
to simplify the task for handling the information of school. This
will provide an effective way to keep the data of school safe.
Our School Management System deals with the various
activities related to the school. It allow the administrator of
any organization to edit and find out the details of a school
and allows the school to keep their profile up to date.
This School Management System will be user-friendly and
requires minimum human intervention. This helps the school
to register, update and access records of students and
teacher about their personal detail, attendance, fee structure
or salary etc.. It also manages the library.
PROJECT CATEGORY
■ Python programming and MySQL database.
RESOURCES USED
o Python IDLE
o MySQL 5.1
o Python and MySQL connector
ABOUT FRONTEND [PYTHO!f)
Python is an object-oriented programming language that is
designed in C. By nature, it is a high-level programming language
that allows for the creation of both simple as well as complex
operations.
HISTORY:
Python was created in the early 1990s by Guido van Rossum at
Stichting Mathematisch Centrum in the Netherlands as a successor
of a language called ABC. Guido remains Python's principal author,
although it includes many contributions from others.
In 1995, Guido van Rossum continued his work on Python at the
Corporation for National Research Initiatives in Reston, Virginia
where he released several versions of the software.
In May 2000, Guido van Rossum and the Python core development
team moved to BeOpen.com to form the Be Open Python Labs
team. In October of the same year, the Python Labs team moved to
Digital Creations, which became Zope Corporation. In 2001, the
Python Software Foundation was formed, a non-profit organization
created specifically to own Python-related Intellectual Property.
Zope Corporation was a sponsoring member of the PSF.
STORY BEHIND THE NAME:
Guido van Rossum, the creator of the Python language, named the
language after the BBC show "Monty Python's Flying Circus". He
doesn't particularly like snakes that kill animals for food by winding
their long bodies around them and crushing them.
FEATURES OF PYTHON:
► Simple and Easy
Python is a simple and minimalistic language. Reading a good
Python program feels almost like reading English, although very
strict English! Python is extremely easy to get started with. Python
has an extraordinarily simple syntax.
► Free and Open Source
Python is an example of FLOSS (Free/Libre and Open Source
Software). In simple terms, anyone can freely distribute copies of
this software, read its source code, make changes to it, and use
pieces of it in new free programs. FLOSS is based on the concept of
a community which shares knowledge. This is one of the reasons
why Python is so good it has been created and is constantly
improved by a community who just want to see a better Python.
► Portable
Python programs work on any platforms without requiring any
changes at all if you are careful enough to avoid any system-
dependent features.
► Interpreted
Python does not need compilation to hinary. It just runs the
program directly from the source code. Internally. Python. Converts
the source cowle into an intermediate form called byte codes and
then translates this into the native language of computer and then
runs it.
► Obiect Oriented
Python supports procedure-oriented programming as well as object-
oriented programming. In object-oriented languages, the program
is built around objects which combine data and functionality.
► Extensive Libraries
Along with this Python comes inbuilt with a wide array of modules as
well as libraries which allows it to support many different
programming languages like Java, C. C++, and ISON.
ABOUT BACKEND [MySQLJ
MySQL is a relational database management system (RDBMS) developed
by Oracle that is based on structured query language (SQL).
MySQL is one of the most recognizable technologies in the modern
big data ecosystem. Often called the most popular database and
currently enjoying widespread, effective use regardless of industry,
it's clear that anyone involved with enterprise data or general IT
should at least aim for a basic familiarity of MySQL.
MySQL is integral to many of the most popular software stacks for
building and maintaining everything from customer-facing web
applications to powerful, data-driven B2B services. Its open- source
nature, stability, and rich feature set, paired with ongoing
development and support from Oracle, have meant that internet-
critical organizations such as Facebook, Flickr, Twitter, Wikipedia,
and YouTube all employ MySQL backend.
With MySQL, even those new to relational systems can
Immediately build fast, powerful and secure data storage
systems. MySQL's programmatic syntax and interfaces are also
perfect gateways into the wide world of other popular query
languages and structured data stores.
FEATURES OF MYSQL-
■ Free and Open Source
Any individual or enterprise may freely use, modify, publish, and
expand on Oracle's open-source MySQL code base. The software is
released under the GNU General Public License (GPL). For MySQL
code needing to be integrated or included in a commercial
application (or if open-source software is not apriority). Enterprises
can purchase a commercially licensed version from Oracle.
■ MySQL Is Easy To Use
Though MySQL's relational nature and the ensuing rigid storage
structures might seem restrictive, the tabular paradigm is
Perhaps the most intuitive, and ultimately allows for greater
usability.
■ Compatible on Many Operating Systems
MySQL is compatible to run on many operating systems, like
Windows, Linux, etc.
■ Portable
MySQL also provides a facility that the clients can run on the same
compuler as the server or on another computer.
■ High Flexibility
MySQL supports a large number of embedded applications, which
makes MySQL very flexible.
■ Memory Efficiency
Its efficiency is high because it has a very low memory leakage
problem.
THE FUTURE OF MYSQL:-
MySQL. Was originally envisioned to manage massive databases,
faster than existing database software. Used in demanding
operational, transactional, and production environments for
decades, MySQL evolved alongside the move of computation and
storage into the cloud.
Relative to many data storage and processing solutions on the
market today, MySQL is an older technology, but it shows no signs
of flagging in either popularity or utility. In fact, MySQL. Has
Enjoyed a recent resurgence over even more specialized modern
storage systems, due to its speed, reliability, ease of use, and wide
compatibility.
HARDWARE AND SYSTEM REQUIREMENTS
OPERATING SYSTEM
WINDOWS 7 OR ABOVE
PROCESSOR
PENTIUM (ANY) OR AMO 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
#Main Program
Import mysql.connector as a
Con=a.connect(host='localhost',user='root',passwd
='root', Database ='school')
Def addst ():
N=input("Student
name:") Cl=input
("Class:")
R=int(input("Roll
no.:")]
A =input("Address: ")
Ph=int(input("Phone
no.:"))
Data= (n.cl.r.a.ph)
Sql='insert into student values (%s,%s,,s)*
C=con.cursor()
c.execute(sql,data)
con.commit
print("data entered
successfully") print ("")
def removest():
Cl=input
("class:")
R=input("roll
no.:") Data=(cl.
r)
Sql='delete from student where class=%. sand roll=o/os'
C=con.cursor(
c.execute(sql.dat
a) con.commit
print("data deleted
successfully"] print("")
def displayst:
cl=input("class:
") data=[cl,]
sql='select * from student where class=o/os'
c=con.cursor
c.execute(sql.data)
d=c.fetchall for I ind:
print ("Name:", l[O]]
print("class: ",[1])
print ("roll no.: "[2]]
print ("address: ".[[3])
print("phone no.: "1
[4]] print ("")
print ('"')
def addt():
tid=int(input("teacher
ID:"]]) n-input
("Name:")
5=int(input("Salary: "))
A=input("Address: ")
Ph=int(input("Phone no.:"))
Data= [tid,n,s,a,ph)
Sql='insert into teacher values (%s%5.%,%. 5,0/os)'
C=con.cursor
c.exec
ute(sql,data)
con.commit()
print("data entered
successfully") print ('"')
def removet():
n=input("Teacher name:")
tid=int(input("teacher ID:"]]
data=[n,tid)
sql='delete from teacher where name=%s
and id=%s' c=con.cursor()
c.execute(sql,data)c
con.commit(print("data deleted successfully")
print("")
def updatesal:
n=input ("Name:")
tid=int(input("teacher ID:")]
s=int(input("Salary: "]]
data=(n,tid)
sql='update teacher set salary=%s where name=%s and id=
%s' c=con.cursor
c.execute(sql.dat
a) con.commit
print("salary updated
successfully") print("")
Def displayt:
Sql='select * from
teacher' C=con.cursor
c.execute(sql)
d=c.fetchall
for I ind:
print ("teacher ID:", i[O]]
print("name:",[1]])
print ("salary: "[2])]
print ("address: ",[3])
print("phone no.:
",i[4]) print ("")
print ("")
def tattd():
d=input("class: ")
cit-input ("Class teacher:")
t=int(input("Class strenght:
")) d=input["date: ")
ab= int(input("No. of absentess:
")) data= (n,d,r,a,ph)
sql='insert into ClAttendance values (o/os,o/os.o/os,o/os,o/os)'
c=con.cursor()
c.execute( sql.data
] con.commit
print("data entered successfully")
print ('"')
def displaytated():
sql=select * from CLAttendance'
c=con.cursor()
c.execute( sql)
d=c.fetchall
for I ind:
print ("class",1[O]]
print("class teacher: ".
[1]) print ("total
student: "[2]) print
("date: ",[3]]
print("absentees: ",
[4]] print ("")
print ("")
def clattd():
d=input("date: ")
t-input ("total teacher:")
c.execute(sql.data)
con.commit()
Print("data entered
successfully") Print ("")
Def displaytattd():
Sql='select * from
tattendance' C=con.cursor()
c.execute( sql)
d=c.fetchall
for I ind:
print ("date:", i[O])
print("total teachers: ",J[1]])
print ("no. of teacher absent:
".i[2]) print ("")
print ('"')
def
updatefees():
cl=input("class:
")
m=input("monthl
y: ")
b=input("Busfee:
")
sc=input("scfec:
") tc=input
("techfee: ")
l=input("total :")
data=[cl,m,b,sc,t
c,t)
sql='insert into Feestructure values (%s,%s.%s.%s.%s, %s)'
c=con.cursor
c.execute(sql.dat
a) con.cummit
print("data updated
successfully") Print('"')
Def displayfees():
Sql=select*from
feestructure
C=con.cursor()
C.execute(sql)
D=c.fetchall
For I ind:
Print ("class: ", i[O]]
Print("monthly: ",[1])
Print ("busfee: ".[2])
Print("scfee: ",[3])
Print("techfee: ".i[4])
Print("total:
"[5]] Print(")
Print ("")
Def addbook():
Bid=input("Book ID:") t-input
("Title:") a-input("Author: ")
p=input("Publisher: ")
g= input("Genre:
") data=
(bid,ta.p.g)
sql='lnsert into library values (%s, o/os,%s,%s,%s)'
c=con.cursor
c.execute(sql.dat
a) con.commit
print("data entered
successfully") print("")
def removebo:
title=input ("title:
")
id=int(input("book
id:"]] data=(title,id)
sql='delete from library where title=o/os and id=
%s' c=con.cursor
c.execute(sql.dat
a) con.commit
print("Book deleted
successfully") print("")
def displayb]:
sql='select * from library'
c=con.curso
r c.execute(
sql)
d=c.fetcha
ll() for I ind:
print ("book Id:", 1[O]]
print("title: ",i[1])
print ("author: ".[2]]
print("publisher: ",[3]]
print("genre:
"[4]] print("")
print ('"')
def main():
Ch='y'
While ch in ['y',Y]:
Print ("SCHOOL MANAGEMENT SYSTEM") print ("1. Student
2.teacher
3.CLAttendance
4.TAttendance
5.fee structure
6.library""")
Table=int(input("enter table
no.:")) Print ("")
If table==1:
Op='y'
While op in ['y','Y']:
Print (1. Add student
2. delete student
3. display student detall ""]
Task=int(input("enter task
no.:")) If task==1:
Addst()
Elif
task==2:
Removest()
Elif task==3:
Displayst()
Else:
Print ("enter valid choice")
Op=input ("continue in this table
(y/n): ") Eli ftable==2:
Op='y'
While op in
['y","Y"]: Print (1.
Add teacher
2. Remove teacher
3. update salary
4. display teacher detail"")
Task=int(input("enter task
no.:".:")) If task==1:
Addt()
Elif
task==2:
Removet
() Elif
task==3:
Updatesal()
Elif task==4:
Displayt()
Else:
Print("enter valid choice")
Task=int(input("enter task no.:"])
If task==1:
Addt()
Elif
task==2:
Removet
() Elif
task==3:
Updatesal()
Elif task=-4:
Displayt()
Else:
Print ("enter valid choice")
Op=input ("continue in this table (y/n): ")
Elif ta
ble==3:
Op='y'
While op in ['y','Y']:
Print ("1. Class attendance
2.Display class attendance detail""]
Task=int(input("enter task
nc. :")) If task==1:
Clattd(
) Elif
task==2:
Displayclattd()
Else:
Print ("enter valid choice")
Op-input ("continue in this table (y/n):")
Elif
table==4:
Op='y'
While op in ['yY]:
Print("1. Teacher
attendance 2.display teacher
attendance detail"")
Task=int(input("enter task
no. :")) If task==1:
Tattd()
Elif
task==2:
Displaytattd()
Else:
Print ("enter valid choice")
Op-input("continue in this table
(y/n):") Elif ta ble==S:
Op='y'
While op in ['y','Y'):
Print (1. Update fees
2.display fees detail")
Task=int(input("enter task
no. :")) If task==1:
Updatefees(
) Elif task==2:
Displayfees()
Else:
Print ("enter valid choice"]
Op=input ["continue in this table (y/n): ")
Elif
table==6:
Op='y'
While op in ['y','T']:
Print ("1. Add book
2. remove book
3.Display book")
Task=int(input("enter task
no. :")) If task==1:
Addbook()
Elif task==2:
Removeb(
) Elif task=-3:
Displayb()
Else:
Print ("enter valid choice")
Op=input ("continue in this table (y/n): ")
Else:
Print ("enter valid choice")
Ch=input("do you want to continue
(y/n):") Main()
ADVANTAGES AND FUTURE SCOPE
Advantages
► Saves time for teachers and administration.
► Fee collection
► Improving teaching standard.
► Complete attendance automation.
► Keeping control of absentees.
► #mproving library management.
► Easy management of class information analytical report.
► Easy handling of teachers information and their salary.
Future Scope
► In future our system include accounting system, good
backup and restore facility.
► System is so much flexible so in future it can increase easily
and new modules can be added easily.
► You can add student admission as well as pay online fees.
► Make online exams more effective, efficient and more
dynamic so that it helps to get good support from the student.
CONCLUSION
As for the conclusion, the objectives for this process were achieved
and functioned well as the desired target. The school Information
System database works systematically and will make easy the
user in order to manage all the school data in the system. This
system will give a better performance in arranging the library and
school information without having to do it manually. This system
will help faculty's staff to access the data off student and teachers
faster and easier