Railway Reservation System Overview
The Railway Reservation System is a database-driven application developed using Python and MySQL. It automates railway ticket booking, cancellation, and train management processes while maintaining secure data handling and an intuitive interface.
This project was developed as part of the Database Reservation System Lab (Minor Project) for the B.Tech CSE (III-B) course at IITM College of Engineering, Bahadurgarh, affiliated with MDU, Rohtak.
Objectives:
Replace manual ticket reservation with an automated digital system.
Provide administrative tools for train management (add, update, cancel).
Enable passenger services such as registration, login, booking, and cancellation.
Implement secure MySQL database connectivity and CRUD operations.
Demonstrate the application of DBMS concepts such as normalization, ER diagrams, and relational schema design.
Features: Admin Panel
Add, update, and cancel trains.
Modify journey details, seat availability, and fare structures.
Password-protected administrative access.
Passenger Panel
Register new users and authenticate existing users.
Search trains by origin and destination.
Book and cancel tickets efficiently.
Retrieve forgotten user IDs through registered email verification.
Database Design
users – stores passenger details and login credentials.
train_schedule – maintains train details, schedules, and fare information.
booked_tickets – records booking transactions and ticket information.
Technologies Used:
Programming Language: Python
Database: MySQL
Core Concepts: DBMS, SQL, CRUD, ER Diagrams, Data Normalization
Sample SQL Operations CREATE DATABASE railway; CREATE TABLE users (...); CREATE TABLE train_schedule (...); CREATE TABLE booked_tickets (...);
Output Snapshots:
Main Reservation Menu
Admin Panel (Add, Update, Cancel Train)
Passenger Panel (Register, Login, Search, Book, Cancel Ticket)
Learning Outcomes:
Practical understanding of Python–MySQL integration.
Application of database connectivity and SQL operations in real-world scenarios.
Enhanced problem-solving and logical thinking through project implementation.
Future Enhancements:
Integration of a graphical user interface (GUI) using Tkinter or PyQt.
Implementation of online payment functionality.
Real-time seat availability tracking and dynamic pricing.
References:
Python Documentation
MySQL Documentation
GeeksforGeeks DBMS Tutorials
TutorialsPoint Python-MySQL
W3Schools SQL Reference