Project Ip by Abhi and Vikrant Pp (1)
Project Ip by Abhi and Vikrant Pp (1)
PRACTICES
PROJECT
TOPIC : STUDENT MANAGEMENT
SYSTEM
CLASS
: XII th ‘COMMERCE’
SCHOOL
NAME : PM SHRI KENDRIYA
VIDHYALAYA NO.1
NEEMUCH(M.P)
CERTIFICATE
His approach to the project work was sincere and satisfactory. His keen interest, sincere
efforts and constant persuasion during the project could get this project work completed
Approved by:
INDEX
S No. TOPIC Page no
1 NEED OF PROJECT 01 - 02
3 DATABASE DESIGN 06
5 SYSTEM INSTALLATION 08
6 SOURCE CODE 09 - 25
7 OUTPUTS 26 -
8 CONCLUSION
9 BIBLIOGRAPHY
NEED OF THE PROJECT
1. Student Data Management: The system allows
for the effective management of student data,
including personal details (name, roll number,
class, parents' names, date of birth), which is a
fundamental requirement in any educational
institution.
≡ SOFTWARE REQUIREMENTS
≡DATABASE DESIGN
→Code operates using CSV files ("Details.csv" and
"Report.csv") as data storage, which represents a
simple flat-file approach rather than using a traditional
database management system like MySQL, PostgreSQL,
or SQLite. However, if you were to design a database
for a Student Management System like this in a
relational database model, here's a conceptual outline
of how the tables and relationships might be
structured:
1. Student Table:
Attributes:
RollNo (Primary Key)
Name
sex
class
section
phone_no
email_id
2. Attendence Table:
Attributes:
RollNo (Foreign Key referencing Students'
RollNo)
Stu_att
Relationships:
(06)
(07)
≡SYSTEM INSTALLATION
If you want to set up the Student Management System
on a single machine for personal use or within a local
environment, follow these steps:
Prerequisites:
(08)
while True:
print("**************WELCOME
TO STUDENT
MANAGEMENT*****************")
print("1.admin")
print("2.user")
print("3.exit")
ch=int(input("login
through:"))
(09)
if ch==1:
while True:
print("***************WELCOME TO
STUDENT MANAGEMENT
*****************")
print("---------------------------
----------------------------------
-")
print("1.search
student details")
print("2.to add
student attendence")
print("3.update
student details")
print("4.view student
details")
print("5.add student
details")
print("6.delete from
student ")
print('7.to view
student attendence')
(10)
print('8.to delete from
attendence')
print("9.to view
graph")
print("10.exit")
ch=int(input("your
choice: "))
if ch==1:
k=input("Enter
name to search student Name : ")
print("*****************STUDENT
DETAILS***********************")
c.execute("select*from STUDENT
where NAME like '%{}
%'".format(k))
a=c.fetchall()
if len(a)>=1:
for i in a:
print("Roll no:",i[0])
(11)
print("Name is:",i[1])
print("Sex:",i[2])
print("Class=",i[3])
print("Sec:",i[4])
print("Phone number is=",i[5])
print("Email_id:",i[6])
print("---------------------------
-------------------------")
else:
print("Student
Details Not Found")
d.commit()
elif ch==2:
(12)
print("*****************STUDENT
ATTENDENCE
***********************")
a=int(input("Enter
roll no of student : "))
b=int(input("Enter
present or absent: "))
query = 'insert
into attendence
values("{}","{}")'.format(a,b)
print(query)
c.execute( query)
d.commit()
elif ch==3:
print("1. Update Name")
print("2. Update Gender")
print("3. Update class")
print("4. Update Section")
print("5. Update Phone no.")
print("6. Update E-mail id")
opt=int(input("Enter your choice
to update"))
(13)
if opt==1:
print("---------------------------
------------------------")
print("You are
inside updating name.")
q=input("Enter
ROLL_NUMBER whose data you want to
update: ")
l=input("Enter
your updated name: ")
c.execute("update STUDENT set
NAME='{}' where
roll_NUMBER={}".format(l,q))
d.commit()
elif opt==2:
print("---------------------------
----------------------------------
---------------------------")
print("You are
inside updating Gender.")
p=input("Enter
name whose data you want to
update: ")
(14)
l=input("Enter
your updated Gender: ")
c.execute("update STUDENT set
SEX='{}'where
name='{}'".format(l,p))
d.commit()
elif opt==3:
print("---------------------------
------------------------")
print("You are
inside updating class.")
m=input("Enter
name whose data you want to
update: ")
n=input("Enter
your updated class: ")
c.execute("update STUDENT set
CLASS='{}' where
name='{}'".format(n,m))
d.commit()
elif opt==4:
(15)
print("---------------------------
------------------------")
print("You are
inside updating section.")
y=input("Enter
name whose data you want to
update: ")
e=input("Enter
your updated section: ")
c.execute("update STUDENT set
SEC='{}' where
name='{}'".format(e,y))
d.commit()
elif opt==5:
print("---------------------------
------------------------")
print("You are
inside updating phonenumber.")
h=input("Enter
name whose data you want to
update: ")
r=input("Enter
your updated phone number: ")
(16)
c.execute("update STUDENT set
PHONE_NUMBER='{}' where
name='{}'".format(r,h))
d.commit()
elif opt==6:
print("---------------------------
------------------------")
print("You are
inside updating email_id.")
j=input("Enter
name whose data you want to
update: ")
k=input("Enter
your updated email_id : ")
c.execute("update STUDENT set
EMAIL_ID='{}' where
name='{}'".format(k,j))
d.commit()
else:
print("enter
correct choice")
break
(17)
elif ch==4:
k=input("Enter
name to view student : ")
print("******************* VIEW
STUDENT
DETAILS******************")
c.execute("select*from STUDENT
where NAME like '%{}%'".format(k))
s=c.fetchall()
for i in s:
print("MARKS:",i[7])
print("---------------------------
--------------------------")
d.commit()
elif ch==5:
(18)
print(".................. ADD
STUDENT
DETAILS......................")
a=input("Enter
student name : ")
n=int(input("Enter
student rollno number: "))
r=input("Enter
gender of student: ")
i=int(input("Enter
class of student:"))
p=input("Enter
student section : ")
t=int(input("Enter
student phone number:"))
u=input("Enter
your mail id:")
m=int(input("Enter
your marks:"))
(19)
sq=( "insert into
STUDENT(name,rollno,sex,class,sect
ion,phone_no,email_id,marks)
values
('{}','{}','{}','{}','{}','{}','{}
','{}')
").format(a,n,r,i,p,t,u,m)
c.execute(sq)
d.commit()
print("student
data added successfully")
elif ch==6:
k=input("Enter
name to DELETE student: ")
print("******************** DELETE
STUDENT
DETAILS*******************")
c.execute("delete
from STUDENT where
name='{}'".format(k))
(20)
print(".........Data deleted
successfully..........")
d.commit()
elif ch==7:
print("*****************STUDENT
ATTENDENCE
***********************")
c.execute('select
* from attendence')
z=c.fetchall()
print(z)
elif ch==8:
k=
int(input('enter rollno to
delete:'))
print('*********DELETE STUDENT
ATTENDENCE*********')
c.execute("delete
from attendence where rollno=
'{}'".format(k))
(21)
print("data deleted")
d.commit()
elif ch==10:
break
else :
print("invalid
input")
elif ch==2:
while True:
print("***************WELCOME TO
STUDENT MANAGEMENT
**************")
print("1.search your
Details")
print("2.view
Details")
(22)
print("3.exit")
ch=int(input("what is
your choice: "))
if ch==1:
k=input("Enter
name to search student details: ")
print("*****************STUDENT
DETAILS***********************")
c.execute("select*from STUDENT
where NAME like '%{}%'".format(k))
a=c.fetchall()
if len(a)>=1:
for i in a:
print("ROLL no:",i[0])
print("Name is:",i[1])
print("Sex:",i[2])
(23)
print("Class=",i[3])
print("Sec:",i[4])
print("Phone number is=",i[5])
print("Email_id:",i[6])
print("---------------------------
-------------------------")
else:
print("Student
Details Not Found")
d.commit()
elif ch==2:
k=input("Enter
name to view student details : ")
print("******************* VIEW
STUDENT
DETAILS******************")
(24)
c.execute("select*from STUDENT
where NAME like '%{}%'".format(k))
s=c.fetchall()
for i in s:
print("MARKS:",i[7])
print("---------------------------
--------------------------")
d.commit()
elif ch==3:
break
else:
print("invalid input")
(25)
≡OUTPUTS:-
The outputs or results you can expect from running the Student
Management System code provided earlier will depend on the
functionalities implemented within the code. Here are the
potential outputs based on the actions you perform within the
program: