Uploaded by Swayam Bhushan Singh 5-Yr IDD: Mathematical Sciences, IIT(BHU)

finalinfoprac

advertisement
D.A.V PUBLIC SCHOOL
BSEB COLONY,PATNA
Informatics Practices
Project: "Fee Management System"
(For the partial fulfilment of AISSCE 2020-2021)
Guided by:-
Submitted by:-
Mrs. Swati Swarnim
yashaswi Karan
TGT, Department of I.P
Class:- XII Maths
Board Roll no.:-
CERTIFICATE
This is to certify that Yashaswi karan of Class
XII Maths, Board Roll no. ______________, of
DAV Public School, B.S.E.B Colony, Patna -23
has successfully completed the project for I.P
(Informatics Practices) for the partial fulfilment
of AISSCE Class XII Board Practical Examination
2020-21, under the guidance and consultation
of Mrs. Swati Swarnim (Department of I.P).
__________________
___________________
Signature of External
Signature of Internal
Examiner
Examiner
ACKNOWLEDGEMENT
First of all , I would thank God because of whose blessings, I
was able to make this project.
I would also like to thank our Principal sir, Dr V.S. Ojha.
I am deeply indebted to my mentor and guide, my IP teacher,
Mrs. Swati Swarnim as without her consultation and support , I
could not be able to make this project My heartfelt thanks to
CBSE for giving such an interesting project.
I also express my deepest gratitude towards my parents.
Finally, I would like to thank all my dear ones.
INDEX
1. Introduction
2. System Requirements Specification
3. Python Coding
4. MySQL Coding
5. Output
6. Future scope of the project
7. Conclusion
8. References
INTRODUCTION
In the existing system, most of the records are maintained on
paper. It becomes very inconvenient to modify the data. In the
existing system, here is a possibility that the same data in
different registers may have different values which means the
entries of the same data do not match. This inconsistent state
does not supply the concrete information which poses a
problem in the case information related to particular search
record. Our project is very useful. User is no longer required to
check his register in search of records, as now it can be
searched over the software by choosing some options. The user
need not to type in most of the information. He/she is just
required to enter the desired options. On the whole it liberates
the user from keeping lengthy manual records. In a nutshell, it
abates the work load of an organization. In today's world, no
one likes to perform calculations on calculator or manually
when computer is there. Everyone wants his/her work to be
done by computer automatically and displaying the result for
further manipulations. So this project is about providing
convenience regarding fee management system.
SYSTEM REQUIREMENTS
Hardware Requirement :Processor-Intel® Core™ i3-1005G1 CPU@ 1.30GHz or above
Disk space: 4 GB
Software Requirement :-
Operating system: Windows 10
Python Version: 3.8.6
MySQL Version: 5.5 Command Line Client
PYTHON CODING
import os
import platform
import mysql.connector
import pandas as pd
mydb=mysql.connector.connect(host="localhost", user="root",
password="root",
database="school")
mycursor=mydb.cursor()
def stuInsert():
L=[]
roll=int(input("Enter the roll number : "))
L.append(roll)
name=input("Enter the Name: ")
L.append(name)
age=int(input("Enter Age of Student : "))
L.append(age)
classs=input("Enter the Class : ")
L.append(classs)
city=input("Enter the City ofthe Student : ")
L.append(city)
stud=(L)
sql="insert into student (roll,name,age,class,city) values
(%s,%s,%s,%s,%s)"
mycursor.execute(sql,stud)
mydb.commit()
def stuView():
print("Select the search criteria : ")
print("1. Roll")
print("2. Name")
print("3. Age")
print("4. City")
print("5. All")
ch=int(input("Enter the choice : "))
if ch==1:
s=int(input("Enter roll no : "))
rl=(s,)
sql="select * from student where roll=%s"
mycursor.execute(sql,rl)
elif ch==2:
s=input("Enter Name : ")
rl=(s,)
sql="select * from student where name=%s"
mycursor.execute(sql,rl)
elif ch==3:
s=int(input("Enter age : "))
rl=(s,)
sql="select * from student where age=%s"
mycursor.execute(sql,rl)
elif ch==4:
s=input("Enter City : ")
rl=(s,)
sql="select * from student where City=%s"
mycursor.execute(sql,rl)
elif ch==5:
sql="select * from student"
mycursor.execute(sql)
res=mycursor.fetchall()
print("The Students details are as follows : ")
print("(ROll, Name, Age, Class, City)")
for x in res:
print(x)
def feeDeposit():
L=[]
roll=int(input("Enter the roll number : "))
L.append(roll)
feedeposit=int(input("Enter the Fee to be deposited : "))
L.append(feedeposit)
month=input("Enter month of fee : ")
L.append(month)
fee=(L)
sql="insert into fee (roll,feeDeposit,Month) values (%s,%s,%s)"
mycursor.execute(sql,fee)
mydb.commit()
def feeView():
print("Please enter the details to view the fee details :")
roll=int(input("Enter the roll number of the student whose fee is to
be viewed : "))
sql="Select Student.Roll, Student.Name, Student.Class,
sum(fee.feeDeposit), fee.month from Student INNER JOIN fee ON
Student.roll=fee.roll and fee.roll = %s"
rl=(roll,)
mycursor.execute(sql,rl)
res=mycursor.fetchall()
for x in res:
print(x)
def removeStu():
roll=int(input("Enter the roll number of the student to be deleted :
"))
rl=(roll,)
sql="Delete from fee where roll=%s"
mycursor.execute(sql,rl)
sql="Delete from Student where roll=%s"
mycursor.execute(sql,rl)
mydb.commit()
def MenuSet(): #Function For The Student Management System
print("Enter 1 : To Add Student")
print("Enter 2 : To View Student ")
print("Enter 3 : To Deposit Fee ")
print("Enter 4 : To Remove Student")
print("Enter 5 : To View Fee of Any Student")
try: #Using Exceptions For Validation
userInput = int(input("Please Select An Above Option: ")) #Will
Take Input From User
except ValueError:
exit("\nHy! That's Not A Number") #Error Message
print("\n") #Print New Line
if(userInput == 1):
stuInsert()
elif (userInput==2):
stuView()
elif (userInput==3):
feeDeposit()
elif (userInput==4):
removeStu()
elif (userInput==5):
feeView()
else:
print("Enter correct choice. . . ")
MenuSet()
def runAgain():
runAgn = input("\nwant To Run Again Y/n: ")
while(runAgn.lower() == 'y'):
if(platform.system() == "Windows"):
print(os.system('cls'))
else:
print(os.system('clear'))
MenuSet()
runAgn = input("\nwant To Run Again Y/n: ")
runAgain()
MenuSet()
MySQL CODING
OUTPUT
To add a student:
To view student:
To deposit fee:
To remove a student:
Before:
After
To view fee of any student:
FUTURE SCOPE OF THE PROJECT
My project "FEE MANAGEMENT SYSTEM" will be able to
implement in future after making some changes and
modifications as we make our project at a very low level. So, the
modifications that can be done in our project is to add one
major change which can be done in this project is that to add
the snaps of the student of which the record is entered. This
will result in total identification of the given student. Similarly,
various modifications can be done to enhance the usability of
the given project as suitable for user's requirement.
Conclusion
From this project we can conclude that if this program is very
useful in fee management as it provides more convenience than
the manual work. It provides easy methods to manage the load
of work easily for the users. It is much fast and more efficient as
the data once entered can be modified and accessed easily. The
program can be used per the requirement of the user as it is
very easy to understand.
REFERENCES
1. www.pythontrends.wordpress.com
2.
3.
4.
5.
www.geeksforgeeks.org
Stackoverflow.com
Wikipedia.org
Sumita arora class 12 informatices practices
Related documents
Download