0% found this document useful (0 votes)
8 views34 pages

Report

Uploaded by

garikinakushal01
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)
8 views34 pages

Report

Uploaded by

garikinakushal01
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/ 34

Computer

Science
Investigatory project
Under The Guidance Of:

B. Chathurya Roll no: 20611819


Certificate
This is to certify that B. Chathurya of class
XII during the session 2021-22 has
completed the
Computer Science project herself on
“COLLEGE MANAGEMENT SYSTEM”
under
My super vision. She has taken
Interest and at most sincerity in
Completion of this project.
I certify that this project is up to my
exceptions & as per CBSE guidelines.

INTERNAL EXAMINER EXTERNAL EXAMINER

PRINCIPAL

1
ACKNOWLEDGEME
NT
It is with pleasure that I acknowledge my sincere
gratitude to our teacher
Mr. B. SRINIVASA RAO, who taught and under
took the responsibility of teaching the subject
Computer science, I have been greatly benefited
from his classes. My sincere thanks go to our
(Mrs. Krishna Karmakar) Principal who has always
been a source of encouragement and support
and without whose inspiration; this project would
not have been a successful. Finally, I would like
to express my sincere appreciation for all the
other students for my batch their friendship & the
fine times that we all shared together. Last but
not least, I would like to thank all those who had
helped directly or indirectly towards the
completion of this project.

2
INDEX
S.NO CONTENTS P.NO T.SIGN
1. Introduction 04
2. Analysis: - 06

1. Scope of Project
2. S/W requirement specification
3.H/W & S/W Requirements

3. System design: - 08

Flowchart
4. Steps involved 09
5. Packages used 10
6. Coding 11
7. Output (Screenshots) 27
8. Advantages & Disadvantages 31

9. Future Enhancement 31
10. Conclusion 32
11. Bibliography 32

3
INTRODUCTIO
N
The College Management System facilitates the users
to get the students registered with the college and get
admission. The aim of case study is to design and develop
a database maintaining the records of different students
and status.
This project contains Introduction to the College
management system. It is computerized system of student
registration. It is mainly used for renewal. Online
reservation has made the process for the registration of
students very much easier than ever before.
In our country India, there are number of colleges and
one can easily get admission. Then this project contains
entity relationship model diagram based on college
management system and introduction to relation model.
There is also design of the database of the student
registration based on relation model. Example of some
SQL queries to retrieves data from college management
database.

4
A BRIEF INTRODUCTION
ABOUT MODULES USED IN
PROJECT

Mysql.connector
Tabular: -

DATA BASE CONFIGURATION

Create Database named


“college”.
Import mysql.connector as mq
From tabulate import tabulate

5
ANALYSIS
A) SCOPE OF PROJECT:

Storing data securely using MySQL database and


accessing it through python application.
1. Functionality: Its Functionality based upon
the inputs given by users and validating the
given inputs using predefined functions. We have
provided with seven user defined functions and
one pre-defined functions. There are total eight
functions. In the menu function consists all the
functions defined by user.
1.register (): It takes the inputs from user such
as id, student name, father name, phone

6
number and adds to the Mysql table for
registration.
2.view (): You can see the students registered
for different classes.
3.update (): To make modifications in your
registered student for example changing
student name, father name, class, stream
phone number.
4.remove (): incase transfer of the student we
can delete the student.
5.generate (): it generates fee slip and allows
to pay the fee.
6.fee(): it provides us to see the fee structure
for different streams.
2. Performance: The code performs very well
when there is proper RAM available, it also
requires internet connection to download the
necessary libraries, latest version of python 3 is
preferred, and there must be MYSQL database
software in the computer

7
3. External interface: In this project external
interaction required, as it needs input while
running all it quires.

B) REQUIREMENTS
HARDWARE REQUIRMENTS: -
Minimum requirements of 1 GB RAM.
SOFTWARE REQUIRMENTS: -
PYTHON 3.8 (works on any version of python 3)
MYSQL
OS: WINDOWS 10 or Above

SYSTEM DESIGN
Flow chart

MENU

Student View Generate fee Exit


registered slip Fee structure
Registration
Steps involved
1. Install the latest version of Python
9
2. Install the latest version of MYSQL
database
3. Now go to command prompt and type the
given lines:-
 pip install mysql-connector
 Now open command line of MYSQL
database and create necessary tables.
CREATE DATABSAE COLLEGE;
CREATE TABLE ( ID INT(3) PRIMARY KEY,
Sname Varchar(30),
Fname varchar(30),
Class int(3),
Stream varchar(30),
Phno varchar(11),
Fee float default 0,
Status varchar(15) default
‘N.A’);

10
Packages used
These are the following library functions
which are used in this program. The
uses of these functions are also given
below:

MYSQL.CONNECTOR & tabulate


Make sure to install mysql.connector &
tabulate packages before running the
code. You can do that by going to
command prompt and then type:
 pip install mysql-connector
 pip install tabulate
Mysql.connector is a driver software
which connects mysql database to
python program. In this project it plays a
key role, it stores the details of
students.
Tabulate displays the data in the table
form.

11
Coding
import mysql.connector as mq

from tabulate import tabulate

def menu():

print("\n\n\t\t\t\t\t\t\t\t COLLEGE MANAGEMENT SYSTEM")

print("\t\t\t\t\t\t\t\t *************************\n\n")

print("\t\t\t\t\t\t\t\t\t MAIN MENU")

print("\t\t\t\t\t\t\t\t\t =========\n")

print("\t\t\t\t\t\t 1.Register Student \t\t\t 2.View registered Students\n")

print("\t\t\t\t\t\t 3.Generate Fee Slip\t\t\t 4.Update Student\n")

print("\t\t\t\t\t\t 5.Fee Stucture\t\t\t 6.Delete Student\n")

print("\t\t\t\t\t\t 7.Exit\n\n")

def register():

print("\n\t\t\tNEW STUDENT REGISTRATION ")

print("\t\t\t------------------------\n ")

id = int(input("Enter Student id: "))

nam = input("\nEnter Student name (IN CAPITAL LETTERS): ")

f_nam = input("\nEnter Father's name (IN CAPITAL LETTERS): ")

cls = int(input("\nEnter Class: "))

st = input("\nEnter stream(MPCC/MBiPC/BiPC/ARTS/COMMERCE): ")

ph = int(input("\nEnter Phone Number: "))

12
con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query = "insert into stud(id,Sname,Fname,Class,Stream,Phno)values ({},'{}','{}',{},'{}',


{})".format(id,nam,f_nam,cls,st,ph)

cur.execute(query)

con.commit()

print("\n\nREGISTERD SUCCESSFULLY...")

con.close()

def view():

print("\n\t\t\tDETAILS OF REGISTRED STUDENTS ")

print("\t\t\t-----------------------------\n ")

print("\t\t1.Class 11")

print("\n\t\t2.Class 12")

x=int(input("Choose category:"))

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

if x==1:

query= "select * from stud where Class='11'"

cur.execute(query)

res= cur.fetchall()

if res==[]:

print("\nStudents doesn't Exist..")

else:
print(tabulate(res,headers=['id','S_name','F_name','Class','Stream','Phno','Fees','Status'],tablefmt='g
rid'))

elif x==2:

query= "select * from stud where Class='12'"

cur.execute(query)

13
res= cur.fetchall()

if res==[]:

print("\nStudents doesn't Exist..")

else:

print(tabulate(res,headers=['id','S_name','F_name','Class','Stream','Phno','Fees','Status'],tablefmt='g
rid'))

else:

print("Enter Correct choice..")

con.close()

def update():

print("\n\t\t\t\tUPDATE STUDENT DATA")

print("\t\t\t\t-------------------")

id = int(input("Enter Student id: "))

con = mq.connect(host= "localhost", user = "root",passwd="root", database="college")

cur = con.cursor()

query= "select * from stud where id={}".format(id)

cur.execute(query)

res= cur.fetchall()

if res==[]:

print("Student doesn't Exist..")

else:

print("\n\n\t\t1.STUDENT NAME \t\t2.FATHER NAME")

print("\n\t\t3.CLASS \t\t4.STREAM")

print("\n\t\t5.PHONE NUMBER")

ch= int(input("\nEnter Choice to Update: "))

if ch==1:

nam=input("\nEnter New Name(IN CAPITAL LETTERS): ")

query="update stud set Sname='{}' where id={}".format(nam,id)

14
cur.execute(query)

con.commit()

elif ch==2:

nam=input("\nEnter New Name(IN CAPITAL LETTERS): ")

query="update stud set Sname='{}' where id={}".format(nam,id)

cur.execute(query)

con.commit()

elif ch==3:

cls=int(input("\nEnter New Class: "))

query="update stud set Class= {} where id={}".format(cls,id)

cur.execute(query)

con.commit()

elif ch==4:

st=input("\nEnter New Stream: ")

query="update stud set Stream='{}' where id={}".format(st,id)

cur.execute(query)

con.commit()

elif ch==5:

ph=int(input("\nEnter New Phone Number: "))

query="update stud set Phno= {} where id={}".format(ph,id)

cur.execute(query)

con.commit()

else:

print("\nPlease Enter Correct Choice...")

print("\n\nDATA UPDATED SUCCESFULLY...")

15
con.close()

def remove():

print("\n\t\t\tDELETE STUDENT")

print("\t\t\t--------------")

id = int(input("Enter Student id: "))

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query= "select * from stud where id={}".format(id)

cur.execute(query)

res= cur.fetchall()

if res==[]:

print(tabulate(res,headers=['id','S_name','F_name','Class','Stream','Phno','Fees','Status'],tablefmt='g
rid'))

else:

print(tabulate(res))

ch= input("\nAre you sure to delete student..Y/N: ")

if ch in ['y', 'Y']:

query= "delete from stud where id ={}".format(id)

cur.execute(query)

con.commit()

print("\nDELETED STUDENT SUCCESFULLY FROM THE DATABASE...")

else:

print("No changes made in the Data")

con.close()

def generate():

16
print("\n\t\t\tGENERATING FEE SLIP")

print("\t\t\t-------------------")

id = int(input("\nEnter Student id: "))

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query= "select * from stud where id={}".format(id)

cur.execute(query)

res= cur.fetchall()

con.commit()

if res==[]:

print("Student doesn't Exist..")

else:

fee=0

st= input("\nEnter your stream(MPCC/MBiPC/BiPC/ARTS/COMMERCE):")

query = "select * from stud where Stream='{}'".format(st)

cur.execute(query)

if res[0][4]==st:

if res[0][4]=="MPCC":

fee=fee+3150.0

if res[0][7]!= "Paid":

old_fee=res[0][6]

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

17
print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

else:

old_fee= 0

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

ch=input("\n\nPress Y to Pay the Fee now Any other key to Pay later..")

if ch in ['y','Y']:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Paid' where id={}".format(fee+old_fee,id)

cur.execute(query)

con.commit()

print("\nSuccssfully paid the fee..")

else:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Un-Paid' where id={}".format(fee+old_fee,id)

cur.execute(query)

con.commit()

print("\nPlease pay the fee as soon as possible")

18
elif res[0][4]== "MBiPC":

fee=fee+3045.0

if res[0][7]!= "Paid":

old_fee=res[0][6]

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

else:

old_fee= 0

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

ch=input("\n\nPress Y to Pay the Fee now Any other key to Pay later..")

if ch in ['y','Y']:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Paid' where id={}".format(fee+old_fee,id)

19
cur.execute(query)

con.commit()

print("\nSuccssfully paid the fee..")

else:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Un-Paid' where id={}".format(fee+old_fee,id)

cur.execute(query)

con.commit()

print("\nPlease pay the fee as soon as possible")

elif res[0][4]== "BiPC":

fee=fee+3000.0

if res[0][7]!= "Paid":

old_fee=res[0][6]

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

else:

old_fee= 0

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

20
print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

ch=input("\n\nPress Y to Pay the Fee now Any other key to Pay later..")

if ch in ['y','Y']:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Paid' where id={}".format(fee+old_fee,id)

cur.execute(query)

con.commit()

print("\nSuccssfully paid the fee..")

else:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Un-Paid' where id={}".format(fee+old_fee,id)

cur.execute(query)

con.commit()

print("\nPlease pay the fee as soon as possible")

elif res[0][4]=="ARTS":

fee=fee+2700.0

if res[0][7]!= "Paid":

old_fee=res[0][6]

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

21
print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

else:

old_fee= 0

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

ch=input("\n\nPress Y to Pay the Fee now Any other key to Pay later..")

if ch in ['y','Y']:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Paid' where id={}".format(fee+old_fee,id)

cur.execute(query)

con.commit()

print("\nSuccssfully paid the fee..")

else:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Un-Paid' where id={}".format(fee+old_fee,id)

22
cur.execute(query)

con.commit()

print("\nPlease pay the fee as soon as possible")

elif res[0][4]=="COMMERCE":

fee=fee+2700.0

if res[0][7]!= "Paid":

old_fee=res[0][6]

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

else:

old_fee= 0

print("\n\t\t\t\tFEE CHALLAN")

print("\t\t\t\t============")

print("\n\t\t Pending Fee Amount |",old_fee,)

print("\t\t | ")

print("\t\t New fee Ammount |",fee,)

print("\t\t---------------------|----------")

print("\t\t Total Fee Amount |",fee+old_fee,)

print("\t\t---------------------|----------")

ch=input("\n\nPress Y to Pay the Fee now Any other key to Pay later..")

23
if ch in ['y','Y']:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Paid' where id={}".format(fee+old_fee,id)

cur.execute(query)

con.commit()

print("\nSuccssfully paid the fee..")

else:

con = mq.connect(host= "localhost", user = "root",passwd="root",database="college")

cur = con.cursor()

query="update stud set Fee={},Status='Un-Paid' where id={}".format(fee+old_fee,id)

cur.execute(query)

con.commit()

print("\nPlease pay the fee as soon as possible")

else:

print("\nEntered Incorrect Stream..." "\n\nTry Again by entering correct stream..")

con.close()

def fee():

print("\n\n\t\t\t FEE DETAILS")

print("\t\t\t -----------")

print("\n\n\t\t 1.MPCC\t\t\t 2.BiPC")

print("\n\t\t 3.MBiPC\t\t 4.ARTS/HUMANITIES")

print("\n\t\t 5.COMMERCE\n")

ch=int(input("Enter your choice to view FEE DETAILS: "))

if ch==1:

print("\n\n\t\tFee Details of MPCC Students")

print("\t\t****************************")

24
print("\t _______________________ _________________")

print("\t|\t\t\t|\t\t |")

print("\t| FEE PARTICULARS\t|\tAMOUNT |")

print("\t|-----------------------|-----------------|")

print("\t| VVN\t\t\t|\t 1500.00 |")

print("\t| Tution\t\t|\t 1200.00 |")

print("\t| CS Fee/I.P\t\t|\t 150.00 |")

print("\t| Comp Fee\t\t|\t 300.00 |")

print("\t|-----------------------|-----------------|")

print("\t| Total Amount \t\t|\t 3150.00 |")

print("\t|_______________________|_________________|")

elif ch==2:

print("\n\n\t\tFee Details of BiPC Students")

print("\t\t****************************")

print("\t _______________________ _________________")

print("\t|\t\t\t|\t\t |")

print("\t| FEE PARTICULARS\t|\tAMOUNT |")

print("\t|-----------------------|-----------------|")

print("\t| VVN\t\t\t|\t 1500.00 |")

print("\t| Tution\t\t|\t 1200.00 |")

print("\t| CS Fee/I.P\t\t|\t 0.00 |")

print("\t| Comp Fee\t\t|\t 300.00 |")

print("\t|-----------------------|-----------------|")

print("\t| Total Amount \t\t|\t 3000.00 |")

print("\t|_______________________|_________________|")

elif ch==3:

print("\n\n\t\tFee Details of MBiPC Students")

25
print("\t\t*****************************")

print("\t _______________________ _________________")

print("\t|\t\t\t|\t\t |")

print("\t| FEE PARTICULARS\t|\tAMOUNT |")

print("\t|-----------------------|-----------------|")

print("\t| VVN\t\t\t|\t 1500.00 |")

print("\t| Tution\t\t|\t 1200.00 |")

print("\t| CS Fee/I.P\t\t|\t 45.00 |")

print("\t| Comp Fee\t\t|\t 300.00 |")

print("\t|-----------------------|-----------------|")

print("\t| Total Amount \t\t|\t 3045.00 |")

print("\t|_______________________|_________________|")

elif ch==4:

print("\n\n\t Fee Details of ARTS/HUMANITIES Students")

print("\t***************************************")

print("\t _______________________ _________________")

print("\t|\t\t\t|\t\t |")

print("\t| FEE PARTICULARS\t|\tAMOUNT |")

print("\t|-----------------------|-----------------|")

print("\t| VVN\t\t\t|\t 1500.00 |")

print("\t| Tution\t\t|\t 900.00 |")

print("\t| CS Fee/I.P\t\t|\t 0.00 |")

print("\t| Comp Fee\t\t|\t 300.00 |")

print("\t|-----------------------|-----------------|")

print("\t| Total Amount \t\t|\t 2700.00 |")

print("\t|_______________________|_________________|")

elif ch==5:

26
print("\n\n\t Fee Details of COMMERCE Students")

print("\t ********************************")

print("\t _______________________ _________________")

print("\t|\t\t\t|\t\t |")

print("\t| FEE PARTICULARS\t|\tAMOUNT |")

print("\t|-----------------------|-----------------|")

print("\t| VVN\t\t\t|\t 1500.00 |")

print("\t| Tution\t\t|\t 900.00 |")

print("\t| CS Fee/I.P\t\t|\t 0.00 |")

print("\t| Comp Fee\t\t|\t 300.00 |")

print("\t|-----------------------|-----------------|")

print("\t| Total Amount \t\t|\t 2700.00 |")

print("\t|_______________________|_________________|")

else:

print("\nPlease Enter Correct Choice....")

while True:

menu()

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

if x==1:

register()

elif x==2:

view()

elif x==3:

generate()

elif x==4:

update()

elif x==5:

27
fee()

elif x==6:

remove()

elif x==7:

print("Thank you for visiting\n** Please Visit Again**")

exit()

else:

print("Please Enter correct choice and Try Again...")

x= int(input("\n\nPress 0 to continue.. Any other key to Exit...: "))

if x!=0:

print("Thank you for visiting\n** Please Visit Again**")

break

output (screen shot)

28
29
30
Advantages
1.) To act as an interface between the
data provider and the database.
2.) Quick access to the complex and vast
amount of data.
3.) To make the job of routine more
dependent on computer thus reducing
human errors.
4.) Allow an eco-friendly system, which will
save precious time and effort.
5.) Reduce the cases of wrong details as
the system has many checks
performed throughout the system.
6.) A systematic and tabular storage of
data.
7.) Students with facilities of instant
modification and cancellation of
registration.
8.) No need wait for months for
registration.
9.) Online payment makes it more easy
and fast for new customers.

Disadvantages
31
1) Real time Interaction of users and
authorities is not yet present.
2) This software supports only English
language.
3) The software works offline not over the
internet.

Future enhancement
1.We need to write further code to add
real time user-friendly chat support.
2.Make the code look more simplified.
3.Make the look more attractive and
understandable

Conclusion
This software is efficient in storing and
analysing college management
details.
This software also reduces the work
load of the
32
College staff, public and authorities.

Bibliography
SITES REFFERED
https://images.app.goo.gl/9d6qt8HLPx5QQxpi8

https://w3schools.com

https://Quora.com

33

You might also like