Airways Management System | MySQL Connector | Python Project

Airways Management System | MySQL Connector | Python Project


Make Sure you have installed two modules :

1. Python text-to-speech - pip install pyttsx3

2. Python My SQL Connector - pip install mysql-connector


Output Video : 



------------------------------------------------------------------------------------------------------------------

GitHub : Airways Management System - cleverakash

------------------------------------------------------------------------------------------------------------------


Source-Code : 

# Airways Management System

'''

Make Sure you have installed two modules :

1. Python text-to-speech - pip install pyttsx3

2. Python My SQL Connector - pip install mysql-connector

'''


import mysql.connector    # it'll connect python to MySQL RDMS by which we can access our Databases.

import pyttsx3    # this is Python text-to-speech which gives a voice to our Airways Management System.



def speak(line):

    '''it will give a female voice to Every line given as argument(parameter)'''

    voice_id = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\TTS_MS_EN-US_ZIRA_11.0"

    voice = pyttsx3.init()

    voice.setProperty('voice', voice_id)

    voice.say(line)

    voice.runAndWait()



speak("Enter Sql USER Password to get Started & if you don't know the password just press Enter")

sqlpswd = input("Enter SQL USER Password : ")


try:

    ''' Since the User name of most SQL users are same i.e. 'root' we'll also it'''

    flightDB = mysql.connector.connect(host='localhost', user='root', passwd=sqlpswd)

except Exception:

    speak("You've entered wrong sql password try again")

    print("Wrong Password try again ->")

    pswd = input(" Enter SQL USER Password : ")

    try:

        flightDB = mysql.connector.connect(host='localhost', user='root', passwd=pswd)

    except Exception:

        speak("You've Again entered wrong SQL password please remember it and Try agail Later!")

        print("Brother Focus and Try Later! Go Relax ;)")

        quit()


# Fetching the Databases in our Program

cursor = flightDB.cursor()


# Will Create Database Flight If it's not created before

try:

    cursor.execute('CREATE DATABASE flight')

except:

    pass


# Using Database flight

cursor.execute('USE flight')


# Creating Table of Flight's Data

try:

    cursor.execute('CREATE TABLE flightData(flightNo INT, fName VARCHAR(20), fare INT)')

except:

    pass


line = "----------------------------------------------------------------"

def write_data():

    ''' It will add New Details of Flights in table flightData'''

    speak('Enter the Number of Flights you want to insert in Database')

    No_Of_flight = int(input(f"\n{line}\nEnter the Number of Flights you want to insert : "))

    for num in range(No_Of_flight):

        speak(f'Enter the Details of {num+1}-Flight')

        print(f'{line}\nEnter the Details of {num+1}-Flight : \n')

        flightNo = int(input(f'Enter flight Number : '))

        fName = input(f'Enter Name of flight-{flightNo} : ')

        fare = input(f'Enter Fare of {fName}-{flightNo} : ')

        cursor.execute(f"INSERT INTO flightData VALUES ({flightNo}, '{fName}', {fare})")

        flightDB.commit()

        print(line)


def show():

    ''' It will show all the Contents in table flightData'''

    try:

        speak('Showing the Details of Flights')

        cursor.execute('SELECT * FROM flightData')

        data = cursor.fetchall()

        print(f"\n{line}\nDetails of Flight : ")

        for flights in data:

            print(' ', flights)

        print(line)

    except Exception:

        print("Empty Database! Please Insert Details of Flight using 1st Operation.")


def delete():

    '''To delete some details of particular flight'''

    speak('Please Enter Flight Number to delete its Data : ')

    flightNo = int(input(f"\n{line}\nPlease Enter Flight Number to delete its Data : "))

    try:

        cursor.execute(f'DELETE FROM flightData WHERE flightNo={flightNo}')

        speak(f'Details of Flight-{flightNo}, deleted Successfully')

        print(f'{line}\nDetails of Flight-{flightNo}, deleted Successfully.')

        flightDB.commit()

        print(line)

    except Exception:

        print(f'Details of Flight-{flightNo} was Not Found!')


def search():

    '''It'll Search and return a particular Flight details '''

    speak("Please Enter Flight Number to Search : ")

    flightNo = int(input(f"\n{line}\nPlease Enter Flight Number to Search : "))

    try:

        cursor.execute(f'SELECT * FROM flightData WHERE flightNo={flightNo}')

        data = cursor.fetchall()

        print(f'\n{line}\nDetails of Flight-{flightNo} :\n {data} \n{line}')

    except Exception:

        print(f'Details of Flight-{flightNo} was Not Found!')


def updateData():

    '''It'll Update the details of particular flight'''

    speak('Enter Flight Number to Update its detail :')

    oldfNo = int(input(f"\n{line}\nEnter Flight Number to Update its detail : "))

    try:

        speak(f'Enter the New Details of Flight-{oldfNo} :')

        print(f'{line}\nEnter the New Details of Flight-{oldfNo} : ')

        flightNo = int(input(f'Enter flight Number :'))

        cursor.execute(f'UPDATE flightData SET flightNo={flightNo} WHERE flightNo={oldfNo}')

        fName = input(f'Enter Name of flight-{flightNo} : ')

        cursor.execute(f'UPDATE flightData SET fName="{fName}" WHERE flightNo={flightNo}')

        fare = input(f'Enter Fare of {fName}-{flightNo} : ')

        cursor.execute(f'UPDATE flightData SET fare={fare} WHERE flightNo={flightNo}')

        flightDB.commit()

        speak(f'Details of {fName}-{flightNo} Updated Successfully.')

        print(f'{line}\nDetails of {fName}-{flightNo} Updated Successfully.\n{line}')

    except Exception:

        print(f'Details of Flight-{oldfNo} was Not Found!')


if __name__=="__main__":

    speak_one_time = 0

    speak_one = 0

    while True:

        if speak_one == 0:

            speak("Enter Number to choose specific operation you want to perform")

            speak_one = 1

        print('\nOperations :\n 1 - Add Flight Details.\n 2 - Show Flight Details\n 3 - Update Flight Details. ')

        print(' 4 - Delete Flight Detail.\n 5 - Search Flights.\n 6 - Clock.\n 7 - EXIT.')

        if speak_one_time == 0:

            speak("1 for Adding Flight Details, 2 for Displaying flight details, 3 to Update flight details"

                  "4 for Deleting flight details, 5 to Search Flights, 6 to know current timings, and 7 for Exit")

            speak_one_time = 1


        op = int(input("\nEnter Number to Choose Operation : "))

        if op == 1:

            write_data()

        elif op == 2:

            show()

        elif op == 3:

            updateData()

        elif op == 4:

            delete()

        elif op == 5:

            search()

        elif op == 6:

            import time

            live_time = time.strftime("%H:%M:%S")

            speak(f"The Current timings are : {live_time}")

            print(f"\n{line}\nThe Current timings are : {live_time} \n{line}\n")

        elif op == 7:

            speak('Thanks for Using Airways Management System')

            print(f"\n{line}\nThanks for Using Airways Management System.\n")

            speak("Creators of this, Airways Management System are Akash kumar Singh, Rohit Kumar and Pawan Meena ")

            print(f"Creators of Airways Management System :\n | Akash kumar Singh |  Rohit kumar | Pawan Meena | \n{line}")

            break

        else:

            speak("Please Choose CORRECT Operation!")

            print("Please Choose CORRECT Operation!")


flightDB.close()


Disqus Comments