0% found this document useful (0 votes)
390 views

AISSCE:2023 Informatics Practices (065) : Project Report ON

The document describes a student database management system project that uses CSV files. The project allows users to add, view, search, update, and delete student records from the CSV database. It includes functions for the main menu, adding students, viewing all students, searching for a student, updating a student, and deleting a student. The source code provided uses Python and the CSV library to interface with the student data CSV file.

Uploaded by

Himanshu
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)
390 views

AISSCE:2023 Informatics Practices (065) : Project Report ON

The document describes a student database management system project that uses CSV files. The project allows users to add, view, search, update, and delete student records from the CSV database. It includes functions for the main menu, adding students, viewing all students, searching for a student, updating a student, and deleting a student. The source code provided uses Python and the CSV library to interface with the student data CSV file.

Uploaded by

Himanshu
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/ 31

AISSCE :2023

INFORMATICS PRACTICES
(065)
PROJECT REPORT
ON
Student Database Management System With
CSV

SUBMITTED BY: SUBMITTED TO


HIMANSHU PATEL Mrs. Ravita Pathak
CLASS: XII COMMERCE PGT ( Comp.Sc)
Roll. No.___________
INDEX

 CERTIFICATE

 ACKNOWLEDGEMENT

 INTRODUCTION

 HARDWARE AND SOFTWARE


REQUIREMENT

 CONTEXT DESIGN

 SOFTWARE INTERFACE

 SOURCE CODE

 OUTPUT

 BIBLIOGRAPHY
CERTIFICATE

It is to certify that master HIMANSHU PATEL, GAURAV


PANDEY of class XII Commerce has prepared the project named
“Student data management” in the subject of Informatics
Practices as per CBSE curriculum. They has contributed well
enough to complete this project under my guidance and
supervision.

_________________ ______________
Mrs. Ravita Pathak Mrs . Mahalaxmi Pandey
(PGT- CS) (Principal)

______________
External Examiner
ACKNOWLEDGEMENT

This is my proud privilege to convey my gratitude and sincere


regards to my respected computer teacher Mrs. Ravita Pathak
(PGT-CS) of Kendriya Vidyalaya No.1 Rewa for her valuable
guidance to complete this project with my own efforts.

I also thanks to my team member Gaurav for his support


and cooperation to complete this project at every stage.
My sincere gratitude to all my family members for their
encouragement and support.
I would also like to show my gratitude and thanks to my
classmates which help to design my project. You guys help
me any time when I ask. Thank you all.
Finally, I give my heart felt thanks to all the people who
are directly or indirectly helped me to bring this project to final
shape. Thank you for your support and affection.

Himanshu Patel , Gaurav Pandey


INTRODUCTION
Students management system is software which is helpful for students
As well as authorities. In the current system all the activities are done
Manually. It is very time consuming and costly. Our students manage-
Ment system deals with the various activities related to the students.

There are mainly 3 modules in this software


 User module
 Students module
 Mark management

In the software we can register as a user and user has of two types,
students and administrator. Administrator has the power to add new
user and can edit and delete a user. A student can register as user
and can add edit and delete his profile. The administrator can add
edit and delete marks for the students. All the users can see the
marks.
MINIMUM HARDWARE
REQUIREMENT

Hardware
 PC – Laptop
 Ram – 8 GB
 HDD – 1 TB
 PROCESSOR – i5
 CD – 1Pc
CONTEXT DIAGRAM

USER SYSTEM REPORT

Add new
students

Edit students
data

Remove Students STUDENTS

Update students

Search
Students

Add marks
Marks

Calculate
aggregate

View by
branch
Marks

View by
marks

View by Students
year

SOFTWARE INTERFACE

Login
SYSTEM DESIGN

INPUT DESIGN
Input design is the process of covering user- oriented
input to a computer based format. Input design is a part of overall
system design, which requires very careful attention. Often the
collection of input data is the most expensive part of the system. The
main objective of the input design are……..

1. Produce cost effective method of input.


2. Achieve highest possible level of accuracy.
3. Ensure that the input is acceptable to and
Understood by the staff.

INPUT DATA:
The goal of designing input data is to make entry easy,
logical and free from errors as possible. The entering data entry
operators need to know the allocated space for each field; field
sequences and which must match with that in the source documents.
The format in which the data fields are entered should be given in the
input form. Here data entry is online; it make use of processor that
accepts commands and data from the operators through a keyboard.
The input required is analyzed by the processor. It is then acceoted or
rejected.

Input stages include the following processes


 Data recording
 Data transcription
 Data conversation
 Data verification
 Data control
 Data transmission
 Data correction

One of the aim of the system analyst must be to select data


capture method and devices, which reduce the number of stages
so as to reduce both the changes of errors and the cost. Input
types, can be characterized as:
 External
 Internal
 Operational
 Computerized
 Interactive

Input file can exist in document form before being input to the
computer. Input design is rather complex since it involves
procedures for capturing data as well as inputting it to the
computer.

import csv

student_fields = ['roll', 'name', 'age',


'email', 'phone']
student_database = 'students.csv'
def display_menu():
print("-------------------------------------
--")
print(" Student Database Management
System")
print("-------------------------------------
--")
print("1. Add New Student")
print("2. View Students")
print("3. Search Student")
print("4. Update Student")
print("5. Delete Student")
print("6. Quit")

def add_student():
print("-------------------------")
print("Add Student Information")
print("-------------------------")
global student_fields
global student_database

student_data = []
for field in student_fields:
value = input("Enter " + field + ":
")
student_data.append(value)
with open(student_database, "a",
encoding="utf-8") as f:
writer = csv.writer(f)
writer.writerows([student_data])

print("Data saved successfully")


input("Press any key to continue")
return

def view_students():
global student_fields
global student_database

print("--- Student Records ---")

with open(student_database, "r",


encoding="utf-8") as f:
reader = csv.reader(f)
for x in student_fields:
print(x, end='\t |')
print("\
n-------------------------------------------
----------------------")

for row in reader:


for item in row:
print(item, end="\t |")
print("\n")
input("Press any key to continue")

def search_student():
global student_fields
global student_database

print("--- Search Student ---")


roll = input("Enter roll no. to search:
")
with open(student_database, "r",
encoding="utf-8") as f:
reader = csv.reader(f)
for row in reader:
if len(row) > 0:
if roll == row[0]:
print("----- Student
Found -----")
print("Roll: ", row[0])
print("Name: ", row[1])
print("Age: ", row[2])
print("Email: ", row[3])
print("Phone: ", row[4])
break
else:
print("Roll No. not found in our
database")
input("Press any key to continue")

def update_student():
global student_fields
global student_database

print("--- Update Student ---")


roll = input("Enter roll no. to update:
")
index_student = None
updated_data = []
with open(student_database, "r",
encoding="utf-8") as f:
reader = csv.reader(f)
counter = 0
for row in reader:
if len(row) > 0:
if roll == row[0]:
index_student = counter
print("Student Found: at
index ",index_student)
student_data = []
for field in
student_fields:
value = input("Enter
" + field + ": ")
student_data.append(value)
updated_data.append(student_data)
else:
updated_data.append(row)
counter += 1
if index_student is not None:
with open(student_database, "w",
encoding="utf-8") as f:
writer = csv.writer(f)
writer.writerows(updated_data)
else:
print("Roll No. not found in our
database")

input("Press any key to continue")

def delete_student():
global student_fields
global student_database

print("--- Delete Student ---")


roll = input("Enter roll no. to delete:
")
student_found = False
updated_data = []
with open(student_database, "r",
encoding="utf-8") as f:
reader = csv.reader(f)
counter = 0
for row in reader:
if len(row) > 0:
if roll != row[0]:
updated_data.append(row)
counter += 1
else:
student_found = True

if student_found is True:
with open(student_database, "w",
encoding="utf-8") as f:
writer = csv.writer(f)
writer.writerows(updated_data)
print("Roll no. ", roll, "deleted
successfully")
else:
print("Roll No. not found in our
database")

input("Press any key to continue")

while True:
display_menu()

choice = input("Enter your choice: ")


if choice == '1':
add_student()
elif choice == '2':
view_students()
elif choice == '3':
search_student()
elif choice == '4':
update_student()
elif choice == '5':
delete_student()
else:
break

print("-------------------------------")
print(" Thank you for using our system")
print("-------------------------------")

OUTPUT:-
DISPLAYING STUDENTS RECORDS IN SOFTWARE
SEARCHING RECORDS OF A STUDENTS IN SOFTWARE
UPDATING RECORD OF A STUDENT IN SOFTWARE
DELETING A RECORD OF A STUDENTS IN SOFTWARE

CLOSING OF SOFTWARE
BIBLIOGRAPHY

YouTube

Sumita Arora 12th std TextBook

Subject teacher

Group member

Parents

You might also like