CS Project
CS Project
# Establish connection
conn = mysql.connector.connect(
host="localhost",
user="root",
password="your_password",
database="railway_reservation"
)
print("Connection successful!")
cursor = conn.cursor()
2|Page
query = """
CREATE TABLE IF NOT EXISTS Reservations (
ReservationID INT AUTO_INCREMENT PRIMARY
KEY,
PassengerName VARCHAR(100),
TrainNumber INT,
TravelDate DATE,
Source VARCHAR(50),
Destination VARCHAR(50)
)
"""
cursor.execute(query)
print("Table 'Reservations' created successfully!")
3|Page
import hashlib
from db_connection import connect_to_db
# Booking a Ticket
from datetime import datetime
if seats > 0:
booking_date = datetime.now().date()
query = "INSERT INTO Bookings (UserID, TrainID,
BookingDate) VALUES (%s, %s, %s)"
cursor.execute(query, (user_id, train_id, booking_date))
conn.commit()
print("Ticket booked successfully!")
else:
print("No seats available.")
cursor.close()
conn.close()
# Viewing Bookings
def view_bookings(user_id):
conn = connect_to_db()
if conn:
cursor = conn.cursor()
query = """
SELECT b.BookingID, t.TrainName, t.Source,
t.Destination, b.BookingDate
FROM Bookings b
JOIN Trains t ON b.TrainID = t.TrainID
WHERE b.UserID = %s
8|Page
"""
cursor.execute(query, (user_id,))
bookings = cursor.fetchall()
for booking in bookings:
print(booking)
cursor.close()
conn.close()
#MAIN PROGRAM
import mysql.connector
def connect_to_db():
"""Connect to the MySQL database."""
try:
conn = mysql.connector.connect(
host="localhost",
user="root",
9|Page
def create_table(cursor):
"""Create the Reservations table if it doesn't
exist."""
query = """
CREATE TABLE IF NOT EXISTS Reservations (
ReservationID INT AUTO_INCREMENT PRIMARY
KEY,
10 | P a g e
PassengerName VARCHAR(100),
TrainNumber INT,
TravelDate DATE,
Source VARCHAR(50),
Destination VARCHAR(50)
)
"""
cursor.execute(query)
query = """
INSERT INTO Reservations (PassengerName,
TrainNumber, TravelDate, Source, Destination)
VALUES (%s, %s, %s, %s, %s)
"""
data = (name, train_no, travel_date, source,
destination)
cursor.execute(query, data)
conn.commit()
print("Reservation added successfully!")
def view_reservations(cursor):
"""View all reservations."""
query = "SELECT * FROM Reservations"
cursor.execute(query)
reservations = cursor.fetchall()
if reservations:
print("All Reservations:")
12 | P a g e
def main():
"""Main program loop."""
conn = connect_to_db()
if conn is None:
return
cursor = conn.cursor()
14 | P a g e
create_table(cursor)
while True:
print("\n--- Railway Reservation System ---")
print("1. Add Reservation")
print("2. View Reservations")
print("3. Update Reservation")
print("4. Delete Reservation")
print("5. Exit")
cursor.close()
conn.close()
if __name__ == "__main__":
main()