0% found this document useful (0 votes)
336 views31 pages

Student Database Management System

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)
336 views31 pages

Student Database Management System

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

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 ( [Link])
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 = '[Link]'
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 = [Link](f)
[Link]([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 = [Link](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 = [Link](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 = [Link](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 = [Link](f)
[Link](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 = [Link](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 = [Link](f)
[Link](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

Common questions

Powered by AI

Incorporating a CSV-compatible database is significant due to its simplicity and universal compatibility, which enables the management of student data in a structured, easily accessible format. It allows for straightforward data storage and retrieval operations, such as adding, updating, and deleting student records. The CSV format is ideal for handling batch operations and ensures that the system can be easily integrated with other software tools for data analysis or migration .

Integration of a CSV file format enhances the software's operability by ensuring compatibility with diverse data-handling tools and software applications. This universally accepted format allows for easy export and import, facilitating data sharing and interoperability with other systems. It also supports simplicity in file management, easing data manipulation tasks such as batch processing, and providing scalability to adapt to increasing data volumes without complex database configurations .

User modules in the Student Database Management System facilitate the differentiation of roles within the system, categorizing users as either students or administrators. The student module allows individuals to manage personal profiles, whereas the administrator module has broader access to modify student data, including adding or deleting student records and managing their marks. This separation of roles ensures that users only have access appropriate to their needs, thereby maintaining data integrity and security .

A user-friendly input design offers significant implications for operators, including increased efficiency and reduced cognitive load during data entry. By offering intuitive interfaces and logically structured forms, the system enhances operator productivity and minimizes errors. It also facilitates ease of training, as operators can understand and use the system with minimal guidance, leading to more consistent and accurate data entries .

The administrator's ability to manage student marks is crucial as it centralizes academic data management, providing a streamlined process for updating and checking student performance. This feature allows for the consistent application of grading policies and facilitates immediate corrections or updates which are critical for maintaining up-to-date records. It enhances transparency and accountability as students can directly access their own academic records, while administrators ensure data integrity and compliance .

The primary benefits of implementing a student database management system include reduced time consumption and cost compared to manual recordkeeping, efficient handling of student-related activities through automated modules, and the ability to easily add, edit, or delete student data and marks. The system supports both students and administrators, with the former being able to manage their profiles and marks and the latter having the authority to manage user accounts and student records .

The project ensures data accuracy during the input phase by designing a methodical process that includes data verification and control mechanisms. Input stages involve data transcription, conversion, and correction processes, accommodating both manual error-checking and automated verification logic. The stringent input design guidelines ensure that data entered into the system is validated, adhering to predetermined formats and fields, thereby reducing the risk of errors substantially .

Challenges in the input data stage include errors related to data entry, inconsistencies in data format, and delays due to inefficient processes. The project addresses these challenges by specifying a structured design for data fields and employing systematic input processes such as data verification and correction. By minimizing the stages of data capture and ensuring real-time processing, the system reduces the likelihood of error and speeds up data entry, thus addressing potential challenges effectively .

The key components of the software interface for the Student Database Management System include a menu for accessing various functions such as adding, viewing, searching, updating, and deleting student records. The system is designed to interact via simple user prompts and outputs information in a clear, tabular format which is accessible by both students and administrators. The software interface is tasked with managing user login and calculating aggregate scores, ensuring comprehensive access for users based on their roles .

Input design is crucial for ensuring ease of data entry and accuracy in a computerized student management system. By focusing on cost-effectiveness, accuracy, and user-friendliness, input design ensures that data entry is logical and error-free. It includes systematic processes such as data recording, transcription, and verification. Proper input design minimizes errors and costs associated with input data capture, contributing significantly to the overall functionality and efficiency of the management system .

You might also like