Python Student Database Management System
This is a small project to maintain student details like:
rollno
name
per
This project will clear the basic concepts of project development for student. Using this project as base the fields can be changed and a large project can be developed.
This project uses binary file handling to store and maintain the student data.
Here we have options for
- Adding a new record in the binary file
- Display all the records from the file
- Search a record on the basis of roll no
- Searh a record on the basis of name
- Modify a record on the basis of roll no
- Delete a record by roll no
Screen Shots of the above project
Main Menu
Display All The Records
Search A Record By Roll No
Search A Record By Name
View the Project
student1
"""to maintain student details roll name per """ """ modules imported """ import pickle import os """ class used """ class student(object): def __int__(s): s.roll=0 s.name="" s.per=0 def add_rec(s): s.roll=int(input("Enter roll no ")) s.name=input("Enter name ") s.name=s.name.upper() s.per=float(input("Enter per ")) def disp_rec(s): print("roll ",s.roll) print("name ",s.name) print("per ",s.per) def display_rec(s): print("%-10s"%s.roll,"%-20s"%s.name,"%-10s"%s.per) #print("in display_rec") def modify_rec(s): s.roll=int(input("Enter new roll no ")) s.name=input("Enter new name ") s.name=s.name.upper() s.per=float(input("Enter new per ")) def write_record(): try: rec=student() file=open("stud.dat","ab") rec.add_rec() pickle.dump(rec,file) file.close() print("Record added in file") input("Press any key to cont ....") except: pass def display_all(): os.system("cls") print(40*"=") print("\n Student Records\n") print(40*"=") try: file=open("stud.dat","rb") while True: rec=pickle.load(file) rec.display_rec() except EOFError: file.close() print(40*"=") input("Press any key to cont ....") except IOError: print("file could not be opened") def search_roll(): os.system("cls") try: z=0 print(40*"=") print("Record Searching By Roll No") print(40*"=") n=int(input("Enter roll no search ")) file=open("stud.dat","rb") while True: rec=pickle.load(file) #print(rec.roll) if(rec.roll==n): z=1 print("\nRecord Found and details are\n") rec.disp_rec() break except EOFError: file.close() if(z==0): print("record is not present") except IOError: print("file could not be opened") input("Press any key to cont ....") def search_name(): os.system("cls") try: z=0 n=input("Enter name to search ") file=open("stud.dat","rb") while True: rec=pickle.load(file) #print(rec.roll) if(rec.name==n.upper()): z=1 rec.disp_rec() break except EOFError: file.close() if(z==0): print("record is not present") except IOError: print("file could not be opened") input("Press any key to cont ....") def modify_roll(): os.system("cls") z=0 try: n=int(input("Enter roll no to modify ")) file=open("stud.dat","rb") temp=open("temp.dat","wb") while True: rec=pickle.load(file) if(rec.roll==n): z=1 print("record found and details are") rec.disp_rec() print("Enter new data ") rec.modify_rec() pickle.dump(rec,temp) print("Record updated") else: pickle.dump(rec,temp) except EOFError: file.close() temp.close() if(z==0): print("Record not found") except IOError: print("File could not be opened") os.remove("stud.dat") os.rename("temp.dat","stud.dat") input("Press any key to cont ....") def delete_roll(): os.system("cls") z=0 try: n=int(input("Enter roll no to delete ")) file=open("stud.dat","rb") temp=open("temp.dat","wb") while True: rec=pickle.load(file) if(rec.roll==n): z=1 print("record to delete found and details are") rec.disp_rec() #pickle.dump(rec,temp) #print("Record updated") else: pickle.dump(rec,temp) except EOFError: file.close() temp.close() if(z==0): print("Record not found") except IOError: print("File could not be opened") os.remove("stud.dat") os.rename("temp.dat","stud.dat") input("Press any key to cont ....") while True: os.system("cls") print(40*"=") print(""" Main Menu --------- 1. Add recod 2. display all records 3. search by rollno 4. search by name 5. Modify by rollno 6. delete by rollno 7. exit """) print(40*"=") ch=int(input("Enter your choice ")) print(40*"=") if(ch==1): write_record() elif(ch==2): display_all() elif(ch==3): search_roll() elif(ch==4): search_name() elif(ch==5): modify_roll() elif(ch==6): delete_roll() elif(ch==7): print("End") break else: print("Invalid choice")
Download Project
Download Project and Output in word format
CBSE Class 12 @ Python
Tutorials | Technical Questions | Interview Questions |
---|---|---|
C Programming C++ Programming Class 11 (Python) Class 12 (Python) |
C Language C++ Programming Python |
C Interview Questions C++ Interview Questions C Programs C++ Programs |