0% found this document useful (0 votes)
60 views63 pages

Airline Reservation System: Project Report For

This document summarizes an airline reservation system project created by five authors on October 25, 2007. It includes an entity relationship diagram and lists 16 entities in the system like Agent, Aircraft, Booking, Customer Profile, and Airport. For each entity, it describes the primary key, attributes, and relationships to other entities.

Uploaded by

api-3846093
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
60 views63 pages

Airline Reservation System: Project Report For

This document summarizes an airline reservation system project created by five authors on October 25, 2007. It includes an entity relationship diagram and lists 16 entities in the system like Agent, Aircraft, Booking, Customer Profile, and Airport. For each entity, it describes the primary key, attributes, and relationships to other entities.

Uploaded by

api-3846093
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 63

PROJECT REPORT

For

AIRLINE RESERVATION SYSTEM

Authors:
Srinivasa Reddy B.R(2007119)
Sriharsha D.V(2007117)
Suhel Khan(2007120
Srinivas B2007118)
Sreenatha K.V(2007116)

Date: 10/25/2007

1
Project details

Project name AIRLINE RESERVATION SYSTEM


Target DBMS Oracle 10g
Created 2007-10-25
Modified 2007-10-25

2
ER diagram

3
List of entities
Entity name Primary key attributes # Attributes
AGENT PERSON_ID 3
AIRCRAFT AIRCRAFT_ID 6
AIRCRAFT_INSTANCE INSTANCE_ID 6
AIRCRAFT_SEATS SEAT_NUM, 5
INSTANCE_ID
AIRCRAFT_TYPE MODEL_ID 3
AIRPORT AIRPORT_ID 3
ARRIVAL INSTANCE_ID 4
BAGGAGE BAGGAGE_ID 4
BOARDING PASS BOARDING_ID 4
BOOKING BOOKING_ID 5
CANCELLATION CANCEL_ID 3
CUSTOMER_PROFILE PERSON_ID 4
DEPARTURE INSTANCE_ID 4
DESTINATION_ROUTE ROUTE_ID 2
DISCOUNT TYPE_OF_CUSTOMER 2
EMPLOYEE PERSON_ID 3
FARE FARE_ID 5
LOCATION LOCATION_ID 4
PERSON PERSON_ID 13
REFUND REFUND_ID 3
ROUTE ROUTE_ID 4
SOURCE_ROUTE ROUTE_ID 2
TICKET TICKET_ID 4

4
Entity details

Entity: AGENT

Entity details:
Description
Primary key PK_AGENT
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK,FK PERSON_ID VARCHAR Yes
AGENT_ACC_NO VARCHAR No
AMT_ACCOUNT FLOAT No

Relationships:
Relationship name Type Parent Child Cardinality Description
DOES Non Identifying AGENT BOOKING One Or More
PERSON_AGENT SubCategory PERSON AGENT Zero Or More

Entity: AIRCRAFT

Entity details:
Description
Primary key PK_AIRCRAFT
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK AIRCRAFT_ID VARCHAR Yes
MAXSEATS_FC INTEGER No
MAXSEATS_BC INTEGER No
MAXSEATS_EC INTEGER No
STATUS INTEGER No
FK MODEL_ID VARCHAR Yes

Relationships:
Relationship Type Parent Child Cardinality Description
name
IS TYPE OF Non AIRCRAFT_TYPE AIRCRAFT Zero Or More
Identifying
IS TYPE OF. Non AIRCRAFT AIRCRAFT_INSTANCE Zero Or More
Identifying

Entity: AIRCRAFT_INSTANCE

Entity details:
Description
Primary key PK_AIRCRAFT_INSTANCE
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK INSTANCE_ID VARCHAR Yes
SEATSAVAIL_FC INTEGER No
SEATSAVAIL_EC INTEGER No
SEATSAVAIL_BC INTEGER No
FK ROUTE_ID VARCHAR Yes
FK AIRCRAFT_ID VARCHAR Yes
5
Relationships:
Relationship name Type Parent Child Cardinality Descriptio
AIRCRAFT_INSTANCE_ARRIVAL Identifying AIRCRAFT_INSTANCE ARRIVALExactly
One
AIRCRAFT_INSTANCE_DEPARTURE Identifying AIRCRAFT_INSTANCE DEPARTURE Exactly
One
BELONGS TO Non AIRCRAFT_INSTANCE BOOKING Zero Or
Identifying More
CONTAINS MANY Non AIRCRAFT_INSTANCE BOARDING PASS Zero Or
Identifying More
IS TYPE OF. Non AIRCRAFT AIRCRAFT_INSTANCE Zero Or
Identifying More
MANY Non AIRCRAFT_INSTANCE AIRCRAFT_SEATS One Or
Identifying More
PROVIDES MANY. Non ROUTE AIRCRAFT_INSTANCE Zero Or
Identifying More

Entity: AIRCRAFT_SEATS

Entity details:
Description
Primary key PK_AIRCRAFT_SEATS
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK SEAT_NUM VARCHAR Yes
SEAT_TYPE CHAR No
CLASS_TYPE CHAR No
PF INSTANCE_ID VARCHAR Yes
SEAT_OCCUPIED VARCHAR No

Relationships:
Relationship Type Parent Child Cardinality Description
name
MANY Non AIRCRAFT_INSTANCE AIRCRAFT_SEATS One Or More
Identifying

Entity: AIRCRAFT_TYPE

Entity details:
Description
Primary key PK_AIRCRAFT_TYPE
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK MODEL_ID VARCHAR Yes
MAX_SEATS INTEGER No
COMPANY_NAME VARCHAR No

Relationships:
Relationship Type Parent Child Cardinality Description
name
IS TYPE OF Non Identifying AIRCRAFT_TYPE AIRCRAFT Zero Or More

Entity: AIRPORT

Entity details:
Description
Primary key PK_AIRPORT
constraint name
6
Attributes:
Key Attribute name Data type Not null Description
PK AIRPORT_ID VARCHAR Yes
AIRPORT_NAME VARCHAR No
FK LOCATION_ID VARCHAR Yes

Relationships:
Relationship name Type Parent Child Cardinality Description
AIRPORT_ARRIVAL Non AIRPORT ARRIVAL Zero Or
Identifying More
AIRPORT_DEPARTURE Non AIRPORT DEPARTURE Zero Or
Identifying More
AIRPORT_DESTINATION_ROUTE Non AIRPORT DESTINATION_ROUTE Zero Or
Identifying More
CONTAINS MANY. Non AIRPORT SOURCE_ROUTE Zero Or
Identifying More
LOCATION_AIRPORT Non LOCATION AIRPORT One Or
Identifying More
RUN WITH Non AIRPORT EMPLOYEE Zero Or
Identifying More

Entity: ARRIVAL

Entity details:
Description
Primary key PK_ARRIVAL
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK,FK INSTANCE_ID VARCHAR Yes
ARRIVAL_DATE DATE No
ARRIVAL_TIME TIMESTAMP No
FK AIRPORT_ID VARCHAR Yes

Relationships:
Relationship name Type Parent Child Cardinality Description
AIRCRAFT_INSTANCE_ARRIVAL Identifying AIRCRAFT_INSTANCE ARRIVAL Exactly
One
AIRPORT_ARRIVAL Non AIRPORT ARRIVAL Zero Or
Identifying More

Entity: BAGGAGE

Entity details:
Description
Primary key PK_BAGGAGE
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK BAGGAGE_ID VARCHAR Yes
BAGGAGE_WEIGHT FLOAT No
BAGGAGE_TYPE VARCHAR No
FK BOARDING_ID VARCHAR Yes

Relationships:
Relationship Type Parent Child Cardinality Description
name
CAN HAVE Non Identifying BOARDING BAGGAGE Zero Or More
PASS

Entity: BOARDING PASS 7


Entity details:
Description
Primary key PK_BOARDING PASS
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK BOARDING_ID VARCHAR Yes
FK TICKET_ID VARCHAR Yes
CHECKIN_TYPE VARCHAR Yes
FK INSTANCE_ID VARCHAR No

Relationships:
Relationship Type Parent Child Cardinality Description
name
CAN HAVE Non BOARDING PASS BAGGAGE Zero Or More
Identifying
CONTAINS Non AIRCRAFT_INSTANCE BOARDING Zero Or More
MANY Identifying PASS
ISSUES Non TICKET BOARDING Exactly One
Identifying PASS

Entity: BOOKING

Entity details:
Description
Primary key PK_BOOKING
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK BOOKING_ID VARCHAR Yes
NO_TICKETS INTEGER No
DATE_OF_BOOKING DATE No
FK INSTANCE_ID VARCHAR Yes
FK PERSON_ID VARCHAR Yes

Relationships:
Relationship Type Parent Child Cardinality Description
name
BELONGS TO Non AIRCRAFT_INSTANCE BOOKING Zero Or More
Identifying
DOES Non AGENT BOOKING One Or More
Identifying
MAKES Non CUSTOMER_PROFILE BOOKING One Or More
Identifying
PROVIDES Non BOOKING TICKET One Or More
Identifying

Entity: CANCELLATION

Entity details:
Description
Primary key PK_CANCELLATION
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK CANCEL_ID VARCHAR Yes
CANCEL_DATE DATE No
FK TICKET_ID VARCHAR Yes 8
Relationships:
Relationship Type Parent Child Cardinality Description
name
BRINGS Non CANCELLATION REFUND Exactly One
Identifying
UNDERGOES Non TICKET CANCELLATION Zero Or One
Identifying

Entity: CUSTOMER_PROFILE

Entity details:
Description
Primary key PK_CUSTOMER_PROFILE
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK,FK PERSON_ID VARCHAR Yes
PASSPORT_ID INTEGER No
FFFLAG INTEGER No
TOTAL_MILES INTEGER No

Relationships:
Relationship name Type Parent Child Cardinality Description
MAKES Non CUSTOMER_PROFILE BOOKING One Or
Identifying More
PERSON_CUSTOMER_PROFILE SubCategory PERSON CUSTOMER_PROFILE Zero Or
More

Entity: DEPARTURE

Entity details:
Description
Primary key PK_DEPARTURE
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK,FK INSTANCE_ID VARCHAR Yes
DEPARTURE_DATE DATE No
DEPARTURE_TIME TIMESTAMP No
FK AIRPORT_ID VARCHAR Yes

Relationships:
Relationship name Type Parent Child Cardinality Description
AIRCRAFT_INSTANCE_DEPARTURE Identifying AIRCRAFT_INSTANCE DEPARTURE Exactly
One
AIRPORT_DEPARTURE Non AIRPORT DEPARTURE Zero Or
Identifying More

Entity: DESTINATION_ROUTE

Entity details:
Description
Primary key PK_DESTINATION_ROUTE
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK,FK ROUTE_ID VARCHAR Yes
FK AIRPORT_ID VARCHAR Yes
9
Relationships:
Relationship name Type Parent Child Cardinality Description
AIRPORT_DESTINATION_ROUTE Non AIRPORT DESTINATION_ROUTE Zero Or
Identifying More
ROUTE_DESTINATION_ROUTE Identifying ROUTE DESTINATION_ROUTE Exactly
One

Entity: DISCOUNT

Entity details:
Description
Primary key PK_DISCOUNT
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK TYPE_OF_CUSTOMER CHAR Yes
PERCENT_DISCOUNT FLOAT No

Relationships:
Relationship Type Parent Child Cardinality Description
name
GIVES Non Identifying DISCOUNT TICKET Exactly One

Entity: EMPLOYEE

Entity details:
Description
Primary key PK_EMPLOYEE
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK,FK PERSON_ID VARCHAR Yes
FK AIRPORT_ID VARCHAR Yes
EMPLOYEE_DESIG CHAR No

Relationships:
Relationship name Type Parent Child Cardinality Description
PERSON_EMPLOYEE SubCategory PERSON EMPLOYEE Zero Or More
RUN WITH Non Identifying AIRPORT EMPLOYEE Zero Or More

Entity: FARE

Entity details:
Description
Primary key PK_FARE
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK FARE_ID VARCHAR Yes
BASIC_FAREFC FLOAT No
BASIC_FAREEC FLOAT No
BASIC_FAREBC FLOAT No
TAX_ON_FAIR FLOAT No

Relationships:
Relationship name Type Parent Child Cardinality Description
FARE_ROUTE Non Identifying FARE ROUTE Zero Or More

Entity: LOCATION
10
Entity details:
Description
Primary key PK_LOCATION
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK LOCATION_ID VARCHAR Yes
CITY VARCHAR No
STATE VARCHAR No
COUNTRY VARCHAR No

Relationships:
Relationship name Type Parent Child Cardinality Description
LOCATION_AIRPORT Non Identifying LOCATION AIRPORT One Or More

Entity: PERSON

Entity details:
Description
Primary key PK_PERSON
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK PERSON_ID VARCHAR Yes
F_NAME CHAR No
L_NAME CHAR No
DATE_OF_BIRTH DATE No
GENDER CHAR No
MOBILE_NO INTEGER No
OFFICE_NO INTEGER No
HOME_NO INTEGER No
EMAIL_ID VARCHAR No
HOUSE_NO INTEGER No
CITY CHAR No
STATE CHAR No
NATIONALITY CHAR No

Entity: REFUND

Entity details:
Description
Primary key PK_REFUND
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK REFUND_ID VARCHAR Yes
FK CANCEL_ID VARCHAR Yes
TIME_ELASPED VARCHAR No

Relationships:
Relationship Type Parent Child Cardinality Description
name
BRINGS Non Identifying CANCELLATION REFUND Exactly One

Entity: ROUTE

Entity details:
Description
Primary key PK_ROUTE
constraint name 11
Attributes:
Key Attribute name Data type Not null Description
PK ROUTE_ID VARCHAR Yes
HOURS_OF_JOURNEY TIMESTAMP No
MILES_EARNED FLOAT No
FK FARE_ID VARCHAR Yes

Relationships:
Relationship name Type Parent Child Cardinality Description
FARE_ROUTE Non FARE ROUTE Zero Or
Identifying More
PROVIDES MANY. Non ROUTE AIRCRAFT_INSTANCE Zero Or
Identifying More
ROUTE_DESTINATION_ROUTE Identifying ROUTE DESTINATION_ROUTE Exactly
One
ROUTE_SOURCE_ROUTE Identifying ROUTE SOURCE_ROUTE Exactly
One
ROUTE_TICKET Non ROUTE TICKET Exactly
Identifying One

Entity: SOURCE_ROUTE

Entity details:
Description
Primary key PK_SOURCE_ROUTE
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK,FK ROUTE_ID VARCHAR Yes
FK AIRPORT_ID VARCHAR Yes

Relationships:
Relationship name Type Parent Child Cardinality Description
CONTAINS MANY. Non AIRPORT SOURCE_ROUTE Zero Or
Identifying More
ROUTE_SOURCE_ROUTE Identifying ROUTE SOURCE_ROUTE Exactly One

Entity: TICKET

Entity details:
Description
Primary key PK_TICKET
constraint name

Attributes:
Key Attribute name Data type Not null Description
PK TICKET_ID VARCHAR Yes
FK ROUTE_ID VARCHAR Yes
FK TYPE_OF_CUSTOMER CHAR Yes
FK BOOKING_ID VARCHAR Yes

Relationships:
Relationship name Type Parent Child Cardinality Description
GIVES Non Identifying DISCOUNT TICKET Exactly One
ISSUES Non Identifying TICKET BOARDING PASS Exactly One
PROVIDES Non Identifying BOOKING TICKET One Or More
ROUTE_TICKET Non Identifying ROUTE TICKET Exactly One
UNDERGOES Non Identifying TICKET CANCELLATION Zero Or One

12
List of attributes
Attribute name Entity name Key Data type Not null
AGENT_ACC_NO AGENT VARCHAR No
AIRCRAFT_ID AIRCRAFT PK VARCHAR Yes
AIRCRAFT_ID AIRCRAFT_INSTANCE FK VARCHAR Yes
AIRPORT_ID DESTINATION_ROUTE FK VARCHAR Yes
AIRPORT_ID SOURCE_ROUTE FK VARCHAR Yes
AIRPORT_ID EMPLOYEE FK VARCHAR Yes
AIRPORT_ID DEPARTURE FK VARCHAR Yes
AIRPORT_ID ARRIVAL FK VARCHAR Yes
AIRPORT_ID AIRPORT PK VARCHAR Yes
AIRPORT_NAME AIRPORT VARCHAR No
AMT_ACCOUNT AGENT FLOAT No
ARRIVAL_DATE ARRIVAL DATE No
ARRIVAL_TIME ARRIVAL TIMESTAMP No
BAGGAGE_ID BAGGAGE PK VARCHAR Yes
BAGGAGE_TYPE BAGGAGE VARCHAR No
BAGGAGE_WEIGHT BAGGAGE FLOAT No
BASIC_FAREBC FARE FLOAT No
BASIC_FAREEC FARE FLOAT No
BASIC_FAREFC FARE FLOAT No
BOARDING_ID BAGGAGE FK VARCHAR Yes
BOARDING_ID BOARDING PASS PK VARCHAR Yes
BOOKING_ID BOOKING PK VARCHAR Yes
BOOKING_ID TICKET FK VARCHAR Yes
CANCEL_DATE CANCELLATION DATE No
CANCEL_ID REFUND FK VARCHAR Yes
CANCEL_ID CANCELLATION PK VARCHAR Yes
CHECKIN_TYPE BOARDING PASS VARCHAR Yes
CITY PERSON CHAR No
CITY LOCATION VARCHAR No
CLASS_TYPE AIRCRAFT_SEATS CHAR No
COMPANY_NAME AIRCRAFT_TYPE VARCHAR No
COUNTRY LOCATION VARCHAR No
DATE_OF_BIRTH PERSON DATE No
DATE_OF_BOOKING BOOKING DATE No
DEPARTURE_DATE DEPARTURE DATE No
DEPARTURE_TIME DEPARTURE TIMESTAMP No
EMAIL_ID PERSON VARCHAR No
EMPLOYEE_DESIG EMPLOYEE CHAR No
FARE_ID FARE PK VARCHAR Yes
FARE_ID ROUTE FK VARCHAR Yes
FFFLAG CUSTOMER_PROFILE INTEGER No
F_NAME PERSON CHAR No
GENDER PERSON CHAR No
HOME_NO PERSON INTEGER No
HOURS_OF_JOURNEY ROUTE TIMESTAMP No
HOUSE_NO PERSON INTEGER No
INSTANCE_ID BOOKING FK VARCHAR Yes
INSTANCE_ID ARRIVAL PK,FK VARCHAR Yes
INSTANCE_ID AIRCRAFT_INSTANCE PK VARCHAR Yes
INSTANCE_ID AIRCRAFT_SEATS FK VARCHAR Yes
INSTANCE_ID DEPARTURE PK,FK VARCHAR Yes
INSTANCE_ID BOARDING PASS FK VARCHAR No
LOCATION_ID LOCATION PK VARCHAR Yes
LOCATION_ID AIRPORT FK VARCHAR Yes
L_NAME PERSON CHAR No
MAXSEATS_BC AIRCRAFT INTEGER No
MAXSEATS_EC AIRCRAFT INTEGER No
MAXSEATS_FC AIRCRAFT INTEGER No 13
MAX_SEATS AIRCRAFT_TYPE INTEGER No
MILES_EARNED ROUTE FLOAT No
MOBILE_NO PERSON INTEGER No
MODEL_ID AIRCRAFT FK VARCHAR Yes
MODEL_ID AIRCRAFT_TYPE PK VARCHAR Yes
NATIONALITY PERSON CHAR No
NO_TICKETS BOOKING INTEGER No
OFFICE_NO PERSON INTEGER No
PASSPORT_ID CUSTOMER_PROFILE INTEGER No
PERCENT_DISCOUNT DISCOUNT FLOAT No
PERSON_ID BOOKING FK VARCHAR Yes
PERSON_ID PERSON PK VARCHAR Yes
PERSON_ID CUSTOMER_PROFILE PK,FK VARCHAR Yes
PERSON_ID AGENT PK,FK VARCHAR Yes
PERSON_ID EMPLOYEE PK,FK VARCHAR Yes
REFUND_ID REFUND PK VARCHAR Yes
ROUTE_ID DESTINATION_ROUTE PK,FK VARCHAR Yes
ROUTE_ID ROUTE PK VARCHAR Yes
ROUTE_ID SOURCE_ROUTE PK,FK VARCHAR Yes
ROUTE_ID TICKET FK VARCHAR Yes
ROUTE_ID AIRCRAFT_INSTANCE FK VARCHAR Yes
SEATSAVAIL_BC AIRCRAFT_INSTANCE INTEGER No
SEATSAVAIL_EC AIRCRAFT_INSTANCE INTEGER No
SEATSAVAIL_FC AIRCRAFT_INSTANCE INTEGER No
SEAT_NUM AIRCRAFT_SEATS PK VARCHAR Yes
SEAT_OCCUPIED AIRCRAFT_SEATS VARCHAR No
SEAT_TYPE AIRCRAFT_SEATS CHAR No
STATE PERSON CHAR No
STATE LOCATION VARCHAR No
STATUS AIRCRAFT INTEGER No
TAX_ON_FAIR FARE FLOAT No
TICKET_ID BOARDING PASS FK VARCHAR Yes
TICKET_ID TICKET PK VARCHAR Yes
TICKET_ID CANCELLATION FK VARCHAR Yes
TIME_ELASPED REFUND VARCHAR No
TOTAL_MILES CUSTOMER_PROFILE INTEGER No
TYPE_OF_CUSTOMER TICKET FK CHAR Yes
TYPE_OF_CUSTOMER DISCOUNT PK CHAR Yes

14
Attribute details

Attribute: AGENT_ACC_NO

Attribute details:
Entity name AGENT
Description
Primary key No
Refers to
Data type VARCHAR
Domain

Attribute: AIRCRAFT_ID

Attribute details:
Entity name AIRCRAFT
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: AIRCRAFT_ID

Attribute details:
Entity name AIRCRAFT_INSTANCE
Description
Primary key No
Refers to AIRCRAFT_ID
Data type VARCHAR
Domain

Attribute: AIRPORT_ID

Attribute details:
Entity name DESTINATION_ROUTE
Description
Primary key No
Refers to AIRPORT_ID
Data type VARCHAR
Domain

Attribute: AIRPORT_ID

Attribute details:
Entity name SOURCE_ROUTE
Description
Primary key No
Refers to AIRPORT_ID
Data type VARCHAR
Domain

Attribute: AIRPORT_ID

Attribute details:
Entity name EMPLOYEE
Description
Primary key No
Refers to AIRPORT_ID 15
Data type VARCHAR
Attribute: AIRPORT_ID

Attribute details:
Entity name DEPARTURE
Description
Primary key No
Refers to AIRPORT_ID
Data type VARCHAR
Domain

Attribute: AIRPORT_ID

Attribute details:
Entity name ARRIVAL
Description
Primary key No
Refers to AIRPORT_ID
Data type VARCHAR
Domain

Attribute: AIRPORT_ID

Attribute details:
Entity name AIRPORT
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: AIRPORT_NAME

Attribute details:
Entity name AIRPORT
Description
Primary key No
Refers to
Data type VARCHAR
Domain

Attribute: AMT_ACCOUNT

Attribute details:
Entity name AGENT
Description
Primary key No
Refers to
Data type FLOAT
Domain

Attribute: ARRIVAL_DATE

Attribute details:
Entity name ARRIVAL
Description
Primary key No
Refers to
Data type DATE
Domain

Attribute: ARRIVAL_TIME
16
Attribute details:
Entity name ARRIVAL
Description
Primary key No
Refers to
Data type TIMESTAMP
Domain

Attribute: BAGGAGE_ID

Attribute details:
Entity name BAGGAGE
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: BAGGAGE_TYPE

Attribute details:
Entity name BAGGAGE
Description
Primary key No
Refers to
Data type VARCHAR
Domain

Attribute: BAGGAGE_WEIGHT

Attribute details:
Entity name BAGGAGE
Description
Primary key No
Refers to
Data type FLOAT
Domain

Attribute: BASIC_FAREBC

Attribute details:
Entity name FARE
Description
Primary key No
Refers to
Data type FLOAT
Domain

Attribute: BASIC_FAREEC

Attribute details:
Entity name FARE
Description
Primary key No
Refers to
Data type FLOAT
Domain

Attribute: BASIC_FAREFC

Attribute details:
Entity name FARE 17
Description
Primary key No
Refers to
Data type FLOAT
Domain

Attribute: BOARDING_ID

Attribute details:
Entity name BAGGAGE
Description
Primary key No
Refers to BOARDING_ID
Data type VARCHAR
Domain

Attribute: BOARDING_ID

Attribute details:
Entity name BOARDING PASS
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: BOOKING_ID

Attribute details:
Entity name BOOKING
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: BOOKING_ID

Attribute details:
Entity name TICKET
Description
Primary key No
Refers to BOOKING_ID
Data type VARCHAR
Domain

Attribute: CANCEL_DATE

Attribute details:
Entity name CANCELLATION
Description
Primary key No
Refers to
Data type DATE
Domain

Attribute: CANCEL_ID

Attribute details:
Entity name REFUND
Description
Primary key No 18
Refers to CANCEL_ID
Data type VARCHAR
Domain

Attribute: CANCEL_ID

Attribute details:
Entity name CANCELLATION
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: CHECKIN_TYPE

Attribute details:
Entity name BOARDING PASS
Description
Primary key No
Refers to
Data type VARCHAR
Domain

Attribute: CITY

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type CHAR
Domain

Attribute: CITY

Attribute details:
Entity name LOCATION
Description
Primary key No
Refers to
Data type VARCHAR
Domain

Attribute: CLASS_TYPE

Attribute details:
Entity name AIRCRAFT_SEATS
Description
Primary key No
Refers to
Data type CHAR
Domain

Attribute: COMPANY_NAME

Attribute details:
Entity name AIRCRAFT_TYPE
Description
Primary key No
Refers to
Data type VARCHAR 19
Domain
Attribute: COUNTRY

Attribute details:
Entity name LOCATION
Description
Primary key No
Refers to
Data type VARCHAR
Domain

Attribute: DATE_OF_BIRTH

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type DATE
Domain

Attribute: DATE_OF_BOOKING

Attribute details:
Entity name BOOKING
Description
Primary key No
Refers to
Data type DATE
Domain

Attribute: DEPARTURE_DATE

Attribute details:
Entity name DEPARTURE
Description
Primary key No
Refers to
Data type DATE
Domain

Attribute: DEPARTURE_TIME

Attribute details:
Entity name DEPARTURE
Description
Primary key No
Refers to
Data type TIMESTAMP
Domain

Attribute: EMAIL_ID

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type VARCHAR
Domain

Attribute: EMPLOYEE_DESIG 20
Attribute details:
Entity name EMPLOYEE
Description
Primary key No
Refers to
Data type CHAR
Domain

Attribute: FARE_ID

Attribute details:
Entity name FARE
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: FARE_ID

Attribute details:
Entity name ROUTE
Description
Primary key No
Refers to FARE_ID
Data type VARCHAR
Domain

Attribute: FFFLAG

Attribute details:
Entity name CUSTOMER_PROFILE
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: F_NAME

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type CHAR
Domain

Attribute: GENDER

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type CHAR
Domain

Attribute: HOME_NO

Attribute details:
Entity name PERSON 21
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: HOURS_OF_JOURNEY

Attribute details:
Entity name ROUTE
Description
Primary key No
Refers to
Data type TIMESTAMP
Domain

Attribute: HOUSE_NO

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: INSTANCE_ID

Attribute details:
Entity name BOOKING
Description
Primary key No
Refers to INSTANCE_ID
Data type VARCHAR
Domain

Attribute: INSTANCE_ID

Attribute details:
Entity name ARRIVAL
Description
Primary key Yes
Refers to INSTANCE_ID
Data type VARCHAR
Domain

Attribute: INSTANCE_ID

Attribute details:
Entity name AIRCRAFT_INSTANCE
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: INSTANCE_ID

Attribute details:
Entity name AIRCRAFT_SEATS
Description
Primary key No
Refers to INSTANCE_ID 22
Data type VARCHAR
Domain

Constraints:
Not null Yes
Check
Default

Attribute: INSTANCE_ID

Attribute details:
Entity name DEPARTURE
Description
Primary key Yes
Refers to INSTANCE_ID
Data type VARCHAR
Domain

Attribute: INSTANCE_ID

Attribute details:
Entity name BOARDING PASS
Description
Primary key No
Refers to INSTANCE_ID
Data type VARCHAR
Domain

Attribute: LOCATION_ID

Attribute details:
Entity name LOCATION
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: LOCATION_ID

Attribute details:
Entity name AIRPORT
Description
Primary key No
Refers to LOCATION_ID
Data type VARCHAR
Domain

Attribute: L_NAME

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type CHAR
Domain

Attribute: MAXSEATS_BC

Attribute details:
Entity name AIRCRAFT
Description 23
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: MAXSEATS_EC

Attribute details:
Entity name AIRCRAFT
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: MAXSEATS_FC

Attribute details:
Entity name AIRCRAFT
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: MAX_SEATS

Attribute details:
Entity name AIRCRAFT_TYPE
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: MILES_EARNED

Attribute details:
Entity name ROUTE
Description
Primary key No
Refers to
Data type FLOAT
Domain

Attribute: MOBILE_NO

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: MODEL_ID

Attribute details:
Entity name AIRCRAFT
Description
Primary key No
Refers to MODEL_ID
Data type VARCHAR 24
Domain
Attribute: MODEL_ID

Attribute details:
Entity name AIRCRAFT_TYPE
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: NATIONALITY

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type CHAR
Domain

Attribute: NO_TICKETS

Attribute details:
Entity name BOOKING
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: OFFICE_NO

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: PASSPORT_ID

Attribute details:
Entity name CUSTOMER_PROFILE
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: PERCENT_DISCOUNT

Attribute details:
Entity name DISCOUNT
Description
Primary key No
Refers to
Data type FLOAT
Domain

Attribute: PERSON_ID 25
Attribute details:
Entity name BOOKING
Description
Primary key No
Refers to PERSON_ID,PERSON_ID
Data type VARCHAR
Domain

Attribute: PERSON_ID

Attribute details:
Entity name PERSON
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: PERSON_ID

Attribute details:
Entity name CUSTOMER_PROFILE
Description
Primary key Yes
Refers to PERSON_ID
Data type VARCHAR
Domain

Attribute: PERSON_ID

Attribute details:
Entity name AGENT
Description
Primary key Yes
Refers to PERSON_ID
Data type VARCHAR
Domain

Attribute: PERSON_ID

Attribute details:
Entity name EMPLOYEE
Description
Primary key Yes
Refers to PERSON_ID
Data type VARCHAR
Domain

Attribute: REFUND_ID

Attribute details:
Entity name REFUND
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: ROUTE_ID

Attribute details: 26
Entity name DESTINATION_ROUTE
Description
Primary key Yes
Refers to ROUTE_ID
Data type VARCHAR
Domain

Attribute: ROUTE_ID

Attribute details:
Entity name ROUTE
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: ROUTE_ID

Attribute details:
Entity name SOURCE_ROUTE
Description
Primary key Yes
Refers to ROUTE_ID
Data type VARCHAR
Domain

Attribute: ROUTE_ID

Attribute details:
Entity name TICKET
Description
Primary key No
Refers to ROUTE_ID
Data type VARCHAR
Domain

Attribute: ROUTE_ID

Attribute details:
Entity name AIRCRAFT_INSTANCE
Description
Primary key No
Refers to ROUTE_ID
Data type VARCHAR
Domain

Attribute: SEATSAVAIL_BC

Attribute details:
Entity name AIRCRAFT_INSTANCE
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: SEATSAVAIL_EC

Attribute details:
Entity name AIRCRAFT_INSTANCE
Description
Primary key No 27
Refers to
Data type INTEGER
Domain

Attribute: SEATSAVAIL_FC

Attribute details:
Entity name AIRCRAFT_INSTANCE
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: SEAT_NUM

Attribute details:
Entity name AIRCRAFT_SEATS
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: SEAT_OCCUPIED

Attribute details:
Entity name AIRCRAFT_SEATS
Description
Primary key No
Refers to
Data type VARCHAR
Domain

Attribute: SEAT_TYPE

Attribute details:
Entity name AIRCRAFT_SEATS
Description
Primary key No
Refers to
Data type CHAR
Domain

Attribute: STATE

Attribute details:
Entity name PERSON
Description
Primary key No
Refers to
Data type CHAR
Domain

Attribute: STATE

Attribute details:
Entity name LOCATION
Description
Primary key No
Refers to
Data type VARCHAR
Domain 28
Attribute: STATUS

Attribute details:
Entity name AIRCRAFT
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: TAX_ON_FAIR

Attribute details:
Entity name FARE
Description
Primary key No
Refers to
Data type FLOAT
Domain

Attribute: TICKET_ID

Attribute details:
Entity name BOARDING PASS
Description
Primary key No
Refers to TICKET_ID
Data type VARCHAR
Domain

Attribute: TICKET_ID

Attribute details:
Entity name TICKET
Description
Primary key Yes
Refers to
Data type VARCHAR
Domain

Attribute: TICKET_ID

Attribute details:
Entity name CANCELLATION
Description
Primary key No
Refers to TICKET_ID
Data type VARCHAR
Domain

Attribute: TIME_ELASPED

Attribute details:
Entity name REFUND
Description
Primary key No
Refers to
Data type VARCHAR
Domain

Attribute: TOTAL_MILES 29
Attribute details:
Entity name CUSTOMER_PROFILE
Description
Primary key No
Refers to
Data type INTEGER
Domain

Attribute: TYPE_OF_CUSTOMER

Attribute details:
Entity name TICKET
Description
Primary key No
Refers to TYPE_OF_CUSTOMER
Data type CHAR
Domain

Attribute: TYPE_OF_CUSTOMER

Attribute details:
Entity name DISCOUNT
Description
Primary key Yes
Refers to
Data type CHAR
Domain

30
List of relationships
Relationship name Type Parent entity Child entity Cardinality
AIRCRAFT_INSTANCE_ARRIVAL Identifying AIRCRAFT_INSTANCE ARRIVAL Exactly
One
AIRCRAFT_INSTANCE_DEPARTURE Identifying AIRCRAFT_INSTANCE DEPARTURE Exactly
One
AIRPORT_ARRIVAL Non AIRPORT ARRIVAL Zero Or
Identifying More
AIRPORT_DEPARTURE Non AIRPORT DEPARTURE Zero Or
Identifying More
AIRPORT_DESTINATION_ROUTE Non AIRPORT DESTINATION_ROUTE Zero Or
Identifying More
BELONGS TO Non AIRCRAFT_INSTANCE BOOKING Zero Or
Identifying More
BRINGS Non CANCELLATION REFUND Exactly
Identifying One
CAN HAVE Non BOARDING PASS BAGGAGE Zero Or
Identifying More
CONTAINS MANY Non AIRCRAFT_INSTANCE BOARDING PASS Zero Or
Identifying More
CONTAINS MANY. Non AIRPORT SOURCE_ROUTE Zero Or
Identifying More
DOES Non AGENT BOOKING One Or
Identifying More
FARE_ROUTE Non FARE ROUTE Zero Or
Identifying More
GIVES Non DISCOUNT TICKET Exactly
Identifying One
IS TYPE OF Non AIRCRAFT_TYPE AIRCRAFT Zero Or
Identifying More
IS TYPE OF. Non AIRCRAFT AIRCRAFT_INSTANCE Zero Or
Identifying More
ISSUES Non TICKET BOARDING PASS Exactly
Identifying One
LOCATION_AIRPORT Non LOCATION AIRPORT One Or
Identifying More
MAKES Non CUSTOMER_PROFILE BOOKING One Or
Identifying More
MANY Non AIRCRAFT_INSTANCE AIRCRAFT_SEATS One Or
Identifying More
PERSON_AGENT SubCategory PERSON AGENT Zero Or
More
PERSON_CUSTOMER_PROFILE SubCategory PERSON CUSTOMER_PROFILE Zero Or
More
PERSON_EMPLOYEE SubCategory PERSON EMPLOYEE Zero Or
More
PROVIDES Non BOOKING TICKET One Or
Identifying More
PROVIDES MANY. Non ROUTE AIRCRAFT_INSTANCE Zero Or
Identifying More
ROUTE_DESTINATION_ROUTE Identifying ROUTE DESTINATION_ROUTE Exactly
One
ROUTE_SOURCE_ROUTE Identifying ROUTE SOURCE_ROUTE Exactly
One
ROUTE_TICKET Non ROUTE TICKET Exactly
Identifying One
RUN WITH Non AIRPORT EMPLOYEE Zero Or
Identifying More
UNDERGOES Non TICKET CANCELLATION Zero Or
Identifying 31
One
32
Relationship details

Relationship: AIRCRAFT_INSTANCE_ARRIVAL

Relationship details:
Description
Type Identifying
Cardinality Exactly One
Parent AIRCRAFT_INSTANCE (INSTANCE_ID)
Child ARRIVAL (INSTANCE_ID)
Update rule None
Delete rule None

Relationship: AIRCRAFT_INSTANCE_DEPARTURE

Relationship details:
Description
Type Identifying
Cardinality Exactly One
Parent AIRCRAFT_INSTANCE (INSTANCE_ID)
Child DEPARTURE (INSTANCE_ID)
Update rule None
Delete rule None

Relationship: AIRPORT_ARRIVAL

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent AIRPORT (AIRPORT_ID)
Child ARRIVAL (AIRPORT_ID)
Update rule None
Delete rule None

Relationship: AIRPORT_DEPARTURE

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent AIRPORT (AIRPORT_ID)
Child DEPARTURE (AIRPORT_ID)
Update rule None
Delete rule None

Relationship: AIRPORT_DESTINATION_ROUTE

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent AIRPORT (AIRPORT_ID)
Child DESTINATION_ROUTE (AIRPORT_ID)
Update rule None
Delete rule None

Relationship: BELONGS TO

Relationship details: 33
Description
Type Non Identifying
Cardinality Zero Or More
Parent AIRCRAFT_INSTANCE (INSTANCE_ID)
Child BOOKING (INSTANCE_ID)
Update rule None
Delete rule None

Relationship: BRINGS

Relationship details:
Description
Type Non Identifying
Cardinality Exactly One
Parent CANCELLATION (CANCEL_ID)
Child REFUND (CANCEL_ID)
Update rule None
Delete rule None

Relationship: CAN HAVE

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent BOARDING PASS (BOARDING_ID)
Child BAGGAGE (BOARDING_ID)
Update rule None
Delete rule None

Relationship: CONTAINS MANY

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent AIRCRAFT_INSTANCE (INSTANCE_ID)
Child BOARDING PASS (INSTANCE_ID)
Update rule None
Delete rule None

Relationship: CONTAINS MANY.

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent AIRPORT (AIRPORT_ID)
Child SOURCE_ROUTE (AIRPORT_ID)
Update rule None
Delete rule None

Relationship: DOES

Relationship details:
Description
Type Non Identifying
Cardinality One Or More
Parent AGENT (PERSON_ID)
Child BOOKING (PERSON_ID)
Update rule None
Delete rule None
34
Relationship: FARE_ROUTE
Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent FARE (FARE_ID)
Child ROUTE (FARE_ID)
Update rule None
Delete rule None

Relationship: GIVES

Relationship details:
Description
Type Non Identifying
Cardinality Exactly One
Parent DISCOUNT (TYPE_OF_CUSTOMER)
Child TICKET (TYPE_OF_CUSTOMER)
Update rule None
Delete rule None

Relationship: IS TYPE OF

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent AIRCRAFT_TYPE (MODEL_ID)
Child AIRCRAFT (MODEL_ID)
Update rule None
Delete rule None

Relationship: IS TYPE OF.

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent AIRCRAFT (AIRCRAFT_ID)
Child AIRCRAFT_INSTANCE (AIRCRAFT_ID)
Update rule None
Delete rule None

Relationship: ISSUES

Relationship details:
Description
Type Non Identifying
Cardinality Exactly One
Parent TICKET (TICKET_ID)
Child BOARDING PASS (TICKET_ID)
Update rule None
Delete rule None

Relationship: LOCATION_AIRPORT

Relationship details:
Description
Type Non Identifying
Cardinality One Or More
Parent LOCATION (LOCATION_ID)
Child AIRPORT (LOCATION_ID) 35
Update rule None
Delete rule None

Relationship: MAKES

Relationship details:
Description
Type Non Identifying
Cardinality One Or More
Parent CUSTOMER_PROFILE (PERSON_ID)
Child BOOKING (PERSON_ID)
Update rule None
Delete rule None

Relationship: MANY

Relationship details:
Description
Type Non Identifying
Cardinality One Or More
Parent AIRCRAFT_INSTANCE (INSTANCE_ID)
Child AIRCRAFT_SEATS (INSTANCE_ID)
Update rule None
Delete rule None

Relationship: PERSON_AGENT

Relationship details:
Description
Type SubCategory
Cardinality Zero Or More
Parent PERSON (PERSON_ID)
Child AGENT (PERSON_ID)
Update rule None
Delete rule None

Relationship: PERSON_CUSTOMER_PROFILE

Relationship details:
Description
Type SubCategory
Cardinality Zero Or More
Parent PERSON (PERSON_ID)
Child CUSTOMER_PROFILE (PERSON_ID)
Update rule None
Delete rule None

Relationship: PERSON_EMPLOYEE

Relationship details:
Description
Type SubCategory
Cardinality Zero Or More
Parent PERSON (PERSON_ID)
Child EMPLOYEE (PERSON_ID)
Update rule None
Delete rule None

Relationship: PROVIDES

Relationship details:
Description
Type Non Identifying 36
Cardinality One Or More
Parent BOOKING (BOOKING_ID)
Child TICKET (BOOKING_ID)
Update rule None
Delete rule None

Relationship: PROVIDES MANY.

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent ROUTE (ROUTE_ID)
Child AIRCRAFT_INSTANCE (ROUTE_ID)
Update rule None
Delete rule None

Relationship: ROUTE_DESTINATION_ROUTE

Relationship details:
Description
Type Identifying
Cardinality Exactly One
Parent ROUTE (ROUTE_ID)
Child DESTINATION_ROUTE (ROUTE_ID)
Update rule None
Delete rule None

Relationship: ROUTE_SOURCE_ROUTE

Relationship details:
Description
Type Identifying
Cardinality Exactly One
Parent ROUTE (ROUTE_ID)
Child SOURCE_ROUTE (ROUTE_ID)
Update rule None
Delete rule None

Relationship: ROUTE_TICKET

Relationship details:
Description
Type Non Identifying
Cardinality Exactly One
Parent ROUTE (ROUTE_ID)
Child TICKET (ROUTE_ID)
Update rule None
Delete rule None

Relationship: RUN WITH

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or More
Parent AIRPORT (AIRPORT_ID)
Child EMPLOYEE (AIRPORT_ID)
Update rule None
Delete rule None

37
Relationship: UNDERGOES

Relationship details:
Description
Type Non Identifying
Cardinality Zero Or One
Parent TICKET (TICKET_ID)
Child CANCELLATION (TICKET_ID)
Update rule None
Delete rule None

TABLE STRUCTURE INDIAN AIRLINES


AIRCRAFT-TYPE

Column Name Data Type Nullable Default Primary Key

MODEL_ID VARCHAR2(10) No - 1

MAX_SEATS NUMBER Yes - -

COMPANY_NAME VARCHAR2(40) Yes - -

• The entity AIRCRAFT_TYPE is used for determining the physical model of the
aircraft.
• The attribute MODEL_ID provides the details about the type of model of the
aircraft and forms the primary key for the AIRCRAFT-TYPE TABLE.
• The MAX_SEATS attribute provides the details about the maximum number of
seats available for the particular model of the aircraft.
• The company name attribute gives the name of the manufacturer of the
aircraft which the INDIAN AIRLINES has bought.

AIRCRAFT

Column Name Data Type Nullable Default Primary Key

AIRCRAFT_ID VARCHAR2(10) No - 1

MAXSEATS_FC NUMBER Yes - -

MAXSEATS_BC NUMBER Yes - -

MAXSEATS_EC NUMBER Yes - -

STATUS NUMBER Yes - -

MODEL_ID VARCHAR2(10) No - -
38
• The entity aircraft provides the details of the seats present in the various
classes of the flight and also the status of the airline.
• The attribute AIRCRAFT_ID helps in order determine a particular aircraft.
• MAXSEATS_FC provides the details about the max seats available in the first
class.
• MAXSEATS_BC provides the details about the max seats available in the
business class.
• MAXSEATS_EC provides the details about the max seats available in the
economy class.
• STATUS attribute indicates the details as to whether the flight is in flying
condition or not.

FARE

Column Name Data Type Nullable Default Primary Key

FARE_ID VARCHAR2(10) No - 1

BASIC_FAREFC FLOAT Yes - -

BASIC_FAREEC FLOAT Yes - -

BASIC_FAREBC FLOAT Yes - -

TAX_ON_FARE FLOAT Yes - -

• The FARE table is used to keep track of the various fares that is charged for
the passengers.
• BASIC_FAREFC attribute is used to determine the fare for travelling in first
class.
• BASIC_FAREBC attribute is used to determine the fare for travelling in
business class
• BASIC_FAREEC attribute is used to determine the fare for travelling in
economy class
• TAX_ON_FARE attribute keeps track of the amount of tax that has to be
charged on the particular traveling fare.

ROUTE

Column Name Data Type Nullable Default Primary Key

ROUTE_ID VARCHAR2(10) No - 1

HOURS_OF_JOURNEY TIMESTAMP(6) Yes - - 39


MILES_EARNED FLOAT Yes - -

FARE_ID VARCHAR2(10) No - -

• The ROUTE table is used to keep track of the various details about the route.
• HOURS_OF_JOURNEY attribute indicates the details as to how much time it
takes for travel.
• MILES_EARNED attribute shows the details as to how much miles have been
earned by the frequent flyer when he travels.
• FARE_ID attribute is a foreign key (primary key for the FARE table) which
keeps track of the details of the fare along with the route details

AIRCRAFT_INSTANCE

Column Name Data Type Nullable Default Primary Key

INSTANCE_ID VARCHAR2(10) No - 1

SEATSAVAIL_FC NUMBER Yes - -

SEATSAVAIL_EC NUMBER Yes - -

SEATSAVAIL_BC NUMBER Yes - -

ROUTE_ID VARCHAR2(10) No - -

AIRCRAFT_ID VARCHAR2(10) No - -

• The AIRCRAFT_INSTANCE table provides an instance of aircraft for a


particular aircraft.
• The INSTANCE_ID provides a particular instance about a flight as to where the
flight is travelling and which route it takes.
• SEATSAVAIL_FC indicates as to the number of seats available in the first class.
• SEATSAVAIL_BC indicates as to the number of seats available in the business
class.
• SEATSAVAIL_EC indicates as to the number of seats available in the economy
class.
• ROUTE_ID is a foreign key and comes from the route table indicating the
route taken.
• AIRCRAFT_ID is an attribute which indicates the particular aircraft travelling.
LOCATION

Column Name Data Type Nullable Default Primary Key

LOCATION_ID VARCHAR2(10) No - 1

CITY VARCHAR2(40) Yes - -


40
STATE VARCHAR2(40) Yes - -

COUNTRY VARCHAR2(40) Yes - -

• The LOCATION table indicates the various locations of the airports present in
the cities.
• The LOCATION_ID attribute indicates the airport uniquely. It is the primary key
for the table.
• The CITY attribute indicates the city in which the airport is present.
• The STATE and COUNTRY respectively indicate the state and the country in
which the particular airport is located.

AIRPORT

Column Name Data Type Nullable Default Primary Key

AIRPORT_ID VARCHAR2(10) No - 1

AIRPORT_NAME VARCHAR2(30) Yes - -

LOCATION_ID VARCHAR2(10) No - -

• The AIRPORT table indicates the name of the airport and gets all the details
from the location table.
• The AIRPORT_ID indicates the airport uniquely.
• The AIRPORT_NAME attribute indicates the name of the airport.
• The LOCATION_ID is a foreign key, which builds a relationship between the
AIRPORT & LOCATION table and hence provides the details about the airport.

AIRCRAFT_SEATS

Column Name Data Type Nullable Default Primary Key

SEAT_NUM VARCHAR2(10) No - 1

INSTANCE_ID VARCHAR2(10) No - 2 41
SEAT_TYPE CHAR(2) Yes - -

CLASS_TYPE CHAR(2) Yes - -

SEAT_OCCUPIED VARCHAR2(10) Yes - -

• The AIRCRAFT_SEATS table provides details about the type of seat and also
the class to which it belongs. It also helps to identify whether a particular
seat has been occupied or not.
• The SEAT_NUM indicates the seat number for a particular aircraft.
• The INSTANCE_ID is a foreign key coming from the INSTANCE table which
indicates a particular instance.
• The SEAT_TYPE is an attribute which shows details whether a particular seat
is a window seat or an aisle seat.
• The CLASS_TYPE attribute indicates the type of class to which particular seat
belongs.
• The SEAT_OCCUPIED indicates whether a particular seat has been occupied
or not.

TICKET

Column Name Data Type Nullable Default Primary Key

TICKET_ID VARCHAR2(10) No - 1

ROUTE_ID VARCHAR2(10) No - -

TYPE_OF_CUSTOMER CHAR(20) No - -

BOOKING_ID VARCHAR2(10) No - -

PERSON_ID VARCHAR(10) No - -

• The TICKET is a table which gives the details about the ticket and also the
passenger who has booked the tickets.
• The TICKET_ID indicates the particular unique ticket id.
• The ROUTE_ID is a foreign key which relates route table with the ticket table
& provides the route.
• The TYPE_OF_CUSTOMER indicates as to whether a frequent flyer or a new
customer is flying on the aircraft.
• The BOOKING_ID is a foreign key relating the booking table and indicates the
details about the booking.
• The PERSON_ID is a foreign key which identifies the person who has the
ticket.

42
BOARDING_PASS

Column Name Data Type Nullable Default Primary Key

BOARDING_ID VARCHAR2(10) No - 1

TICKET_ID VARCHAR2(10) No - -

INSTANCE_ID VARCHAR2(10) Yes - -

CHECKIN_TYPE VARCHAR2(10) Yes - -

• The BOARDING_PASS table indicates the details about the boarding and also
keeps track of the type of check in the user takes.
• The BOARDING_ID is an attribute which indicates the boarding pass uniquely.
• The TICKET_ID setups a relationship between the TICKET table and the
BOARDING PASS and provides the details about boarding.
• The INSTANCE_ID is another foreign key which sets the relation between the
INSTANCE & BOARDING_PASS.
• The CHECKING_TYPE indicates as to the type of checking the passenger
takes.

BAGGAGE

Column Name Data Type Nullable Default Primary Key

BAGGAGE_ID VARCHAR2(10) No - 1

BAGGAGE_WEIGHT FLOAT Yes - -

BAGGAGE_TYPE VARCHAR2(40) Yes - -

BOARDING_ID VARCHAR2(10) No - -

• The BAGGAGE table gives the details about the passenger baggage which
they take during travel.
• The BAGGAGE_ID is an attribute used to identify the baggage.
• The BAGGAGE_WEIGHT indicates the weight of the baggage of the passenger.
• The BAGGAGE_TYPE is an attribute used to identify the type of baggage being
carried by the passenger.
• The BOARDING_ID is used to create a relationship between the BOARDING
PASS & the BAGGAGE. It indicates the particular baggage which is related to
the boarding pass.

CANCELLATION

43
Column Name Data Type Nullable Default Primary Key

CANCEL_ID VARCHAR2(10) No - 1

CANCEL_DATE DATE Yes - -

TICKET_ID VARCHAR2(10) No - -

•The CANCELLATION table indicates the details about the tickets which are
cancelled after booking by the user or the agent.
• The CANCEL_ID indicates the particular cancellation.
• The CANCEL_DATE provides the details about the date when the cancellation
took place.
• The TICKET_ID indicates the details about the ticket which has been cancelled
and links the tables.
REFUND

Column Name Data Type Nullable Default Primary Key

REFUND_ID VARCHAR2(10) No - 1

CANCEL_ID VARCHAR2(10) No - -

TIME_ELASPED VARCHAR2(10) Yes - -

• The REFUND table provides the details about the various refunds given to the
user.
• The REFUND_ID indicates the details about the refund made.
• The CANCEL_ID indicates the cancellation and is a foreign key.
• The TIME_ELAPSED indicates the time from the instance the passenger has
booked the ticket and the time when the passenger cancelled it. Based on
this time the refund is made.

DEPARTURE

Column Name Data Type Nullable Default Primary Key

INSTANCE_ID VARCHAR2(10) No - 1

DEPARTURE_DATE DATE Yes - -

DEPARTURE_TIME TIMESTAMP(6) Yes - -

AIRPORT_ID VARCHAR2(10) No - -

44
• The DEPARTURE table indicates the details about the departure of the flight.
• The INSTANCE_ID indicates the particular flight is about to depart.
• The DEPARTURE_DATE indicates the date as to when the flight is going to fly.
• The DEPARTURE_TIME indicates the time at which the flight is scheduled to
start.
• The AIRPORT_ID indicates the airport from where departure is about to take
place.

ARRIVAL

Column Name Data Type Nullable Default Primary Key

INSTANCE_ID VARCHAR2(10) No - 1

ARRIVAL_DATE DATE Yes - -

ARRIVAL_TIME TIMESTAMP(6) Yes - -

AIRPORT_ID VARCHAR2(10) No - -

• The ARRIVAL table indicates the details about the arrival.


• The INSTANCE_ID indicates the particular flight is about to depart.
• The ARRIVAL_DATE indicates the date as to when the flight is going to enter
the airport.
• The ARRIVAL_TIME indicates the time at which the flight is scheduled to
arrive.
• The AIRPORT_ID indicates the airport to where the aircraft is about to arrive.

SOURCE_ROUTE

Column Name Data Type Nullable Default Primary Key

ROUTE_ID VARCHAR2(10) No - 1

AIRPORT_ID VARCHAR2(10) No - -

• The SOURCE_ROUTE is a table which indicates the details the source place.
• The ROUTE_ID is a foreign key which indicates the details about the route
which the flight takes from the SOURCE airport.
• The AIRPORT_ID indicates the details about the airport which forms the
source from where the aircraft takes off.

DESTINATION_ROUTE

45
Column Name Data Type Nullable Default Primary Key

ROUTE_ID VARCHAR2(10) No - 1

AIRPORT_ID VARCHAR2(10) No - -

• The DESTINATION_ROUTE is a table which indicates the details the source


place.
• The ROUTE_ID is a foreign key which indicates the details about the route
which the flight takes to reach the DESTINATION airport.
• The AIRPORT_ID indicates the details about the airport which is the
destination.

DISCOUNT

Column Name Data Type Nullable Default Primary Key

TYPE_OF_CUSTOMER CHAR(20) No - 1

PERCENT_DISCOUNT FLOAT Yes - -

• The DISCOUNT table indicates the details about the amount which has been
waved off.
• The TYPE_OF_CUSTOMER is an attribute which indicates the details about
type of customer who is getting the discount.
• The PERCENT_DISCOUNT indicates the details about the amount of discount
in terms of percentage.

CUSTOMER_PROFILE

Column Name Data Type Nullable Default Primary Key

PERSON_ID VARCHAR2(10) No - 1

PASSPORT_ID NUMBER Yes - -

FFFLAG NUMBER Yes - -

TOTAL_MILES NUMBER Yes - -

• The CUSTOMER_PROFILE table indicates the details about the customers who
book the tickets.
• The PERSON_ID indicates the person uniquely.
• The PASSPORT_ID indicates the details about the passengers passport.
• The FFFLAG attribute indicates whether the person who books the ticket is a 46
frequent flyer or not.
• The TOTAL_MILES indicates the details about the total miles the passenger
obtained by travelling in the airlines.

AGENT

Column Name Data Type Nullable Default Primary Key

PERSON_ID VARCHAR2(10) No - 1

AGENT_ACC_NO VARCHAR2(10) Yes - -

AMT_ACCOUNT FLOAT Yes - -

• The AGENT indicates the details about the agents who help in booking the
tickets for the passengers.
• The PERSON_ID indicates te particular agent.
• The AGENT_ACC_NO indicates the details about the account which the agent
uses.
• The AMT_ACCOUNT is used to indicate the amount of money present in the
agent’s account.

PERSON

Column Name Data Type Nullable Default Primary Key

PERSON_ID VARCHAR2(10) No - 1

F_NAME CHAR(20) Yes - -

L_NAME CHAR(20) Yes - -

DATE_OF_BIRTH DATE Yes - -

GENDER CHAR(1) Yes - -

MOBILE_NO NUMBER Yes - -

OFFICE_NO NUMBER Yes - -


47
HOME_NO NUMBER Yes - -
EMAIL_ID VARCHAR2(40) Yes - -

HOUSE_NO NUMBER Yes - -

CITY CHAR(40) Yes - -

STATE CHAR(40) Yes - -

NATIONALITY CHAR(40) Yes - -

•The PERSON table is used for providing the details about the passengers.
•The PERSON_ID is used to indicate the passenger who uses the services.
•The F_NAME is the attribute to identify the first name of the person.
•The L_NAME is the attribute to identify the last name of the person.
•The DATE_OF_BIRTH is the attribute indicates the passenger’s date of birth.
•The GENDER is the attribute to indicate whether the passenger is a female or
male.
• The MOBILE_NO, OFFICE_NO, HOME_NO indicate the various numbers of the
passenger.
• The EMAIL_ID is used to identify the email address of the person.
• The HOUSE_NO, CITY, STATE indicate the address of the passenger.
• The NATIONALITY indicates as to which country does the passenger belong
EMPLOYEE

Column Name Data Type Nullable Default Primary Key

PERSON_ID VARCHAR2(10) No - 1

AIRPORT_ID VARCHAR2(10) Yes - -

EMPLOYEE_DESIG CHAR(20) Yes - -

• The EMPLOYEE table is used to identify the details about the employees who
are present at the reservation counter.
• The PERSON_ID is used to identify the person who is an employee.
• The AIRPORT_ID is used to identify which airport the employee is working.
• The EMPLOYEE_DESIG is used to identify the particular designation of the
employee.

BOOKING

Column Name Data Type Nullable Default Primary Key

BOOKING_ID VARCHAR2(10) No - 1
48
NO_TICKETS NUMBER Yes - -

DATE_OF_BOOKING DATE Yes - -

INSTANCE_ID VARCHAR2(10) No - -

PERSON_ID VARCHAR2(10) No - -

• The BOOKING is used to identify the various bookings made by the


passengers.
• The BOOKING_ID is used to identify a particular booking made by a
passenger.
• The NO_TICKETS is used to determine the number of tickets booked by the
passenger.
• The DATE_OF_BOOKING is used to determine the date when the ticket has
been booked for.
• The INSTANCE_ID is used to determine the aircraft for which the booking has
been made.
• The PERSON_ID is used to identify the person who books the tickets. This is a
foreign key and is used to relate both the person and the booking table.

INDIAN AIRLINES SCHEMA DIAGRAM

AIRCRAFT_TYPE

MODEL_ID MAX_SEATS COMPANY_NAME

AIRCRAFT

AIRCRAFT_ID MAXSEATS_FC MAXSEATS_BC MAXSEATS_EC STATUS MODEL_ID

FARE

FARE_ID BASIC_FAREFC BASIC_FAREEC BASIC_FAREBC TAX-ON_FAIR

ROUTE
49
ROUTE_ID HOURS_OF_JOURNEY MILES_EARNED FARE_ID

AIRCRAFT_INSTANCE

INSTANCE_ID SEATSAVAIL_FC SEATSAVAIL_EC SEATSAVAIL_BC ROUTE_ID AIRCRAFT_ID

LOCATION

LOCATION_ID CITY STATE COUNTRY

AIRPORT

AIRPORT_ID AIRPORT_NAME LOCATION_ID

AIRCRAFT_SEATS

SEAT_NUM INSTANCE_ID SEAT_TYPE CLASS_TYPE SEAT_OCCUPIED

BOOKING

BOOKING_I NO_TICKETS DATE_OF_BOOKING INSTANCE_ID PERSON_ID


D

TICKET

TICKET_ID ROUTE_ID TYPE_OF_CUSTOMER BOOKING_ID

BOARDING_PASS

BOARDING_ID TICKET_ID INSTANCE_ID CHECKIN_TYPE


50
BAGGAGE

BAGGAGE_ID BAGGAGE_WEIGHT BAGGAGE_TYPE BOARDING_ID

CANCELLATION

CANCEL_ID CANCEL_DATE TICKET_ID

REFUND

REFUND_ID CANCEL_ID TIME_ELAPSED

DEPARTURE

INSTANCE_ID DEPARTURE_DATE AIRPORT_ID

ARRIVAL

INSTANCE_ID ARRIVAL_DATE AIRPORT_ID

SOURCE_ROUTE

ROUTE_ID AIRPORT_ID

DESTINATION_ROUTE

ROUTE_ID AIRPORT_ID

DISCOUNT
51
TYPE_OF_CUSTOMER PERCENT_DISCOUNT

PERSON

PERSON_ID F_NAME L_NAME DATE_OF_BIRTH GENDER

MOBILE_NO OFFICE_NO HOME_NO EMAIL_ID

HOUSE_NO CITY STATE NATIONALITY

CUSTOMER_PROFILE

PERSON_ID PASSPORT_ID FFFLAG TOTAL_MILES

52
AGENT

PERSON_ID AGENT_ACC_NO AMT_ACCOUNT

EMPLOYEE

PERSON_ID AIRPORT_ID EMPLOYEE_DESIG

DDL STATEMENTS FOR THE INDIAN AIRLINES


CREATE TABLE AIRCRAFT_TYPE (
MODEL_ID VARCHAR(10) NOT NULL PRIMARY KEY,
MAX_SEATS INTEGER,
COMPANY_NAME VARCHAR(40)

);

CREATE TABLE AIRCRAFT (


AIRCRAFT_ID VARCHAR(10) NOT NULL,
MAXSEATS_FC INTEGER,
MAXSEATS_BC INTEGER,
MAXSEATS_EC INTEGER,
STATUS INTEGER,
MODEL_ID VARCHAR(10) NOT NULL REFERENCES AIRCRAFT_TYPE(MODEL_ID),
PRIMARY KEY (AIRCRAFT_ID)
);

CREATE TABLE FARE (


FARE_ID VARCHAR(10) NOT NULL,
BASIC_FAREFC FLOAT,
BASIC_FAREEC FLOAT,
BASIC_FAREBC FLOAT,
TAX_ON_FAIR FLOAT,
PRIMARY KEY (FARE_ID)
);

CREATE TABLE ROUTE (


ROUTE_ID VARCHAR(10) NOT NULL,
HOURS_OF_JOURNEY VARCHAR(10),
MILES_EARNED FLOAT,
FARE_ID VARCHAR(10) NOT NULL REFERENCES FARE(FARE_ID),
PRIMARY KEY (ROUTE_ID)
);

53
CREATE TABLE AIRCRAFT_INSTANCE (
INSTANCE_ID VARCHAR(10) NOT NULL,
SEATSAVAIL_FC INTEGER,
SEATSAVAIL_EC INTEGER,
SEATSAVAIL_BC INTEGER,
ROUTE_ID VARCHAR(10) NOT NULL REFERENCES ROUTE(ROUTE_ID),
AIRCRAFT_ID VARCHAR(10) NOT NULL REFERENCES AIRCRAFT(AIRCRAFT_ID),
PRIMARY KEY (INSTANCE_ID)
);

CREATE TABLE LOCATION (


LOCATION_ID VARCHAR(10) NOT NULL,
CITY VARCHAR(40),
STATE VARCHAR(40),
COUNTRY VARCHAR(40),
PRIMARY KEY (LOCATION_ID)
);

CREATE TABLE AIRPORT (


AIRPORT_ID VARCHAR(10) NOT NULL ,
AIRPORT_NAME VARCHAR(30),
LOCATION_ID VARCHAR(10) NOT NULL REFERENCES LOCATION(LOCATION_ID),
PRIMARY KEY (AIRPORT_ID)
);

CREATE TABLE AIRCRAFT_SEATS (


SEAT_NUM VARCHAR(10) NOT NULL ,
SEAT_TYPE CHAR(2),
CLASS_TYPE CHAR(2),
SEAT_OCCUPIED VARCHAR(10),
INSTANCE_ID VARCHAR(10) REFERENCES AIRCRAFT_INSTANCE(INSTANCE_ID),
PRIMARY KEY(SEAT_NUM,INSTANCE_ID)

);

CREATE TABLE TICKET (


TICKET_ID VARCHAR(10) NOT NULL ,
ROUTE_ID VARCHAR(10) NOT NULL REFERENCES ROUTE(ROUTE_ID),
TYPE_OF_CUSTOMER CHAR(20) NOT NULL REFERENCES DISCOUNT(TYPE_OF_CUSTOMER),
BOOKING_ID VARCHAR(10) NOT NULL REFERENCES BOOKING(BOOKING_ID),
PERSON_ID VARCHAR(10) NOT NULL REFERENCES PERSON(PERSON_ID),
PRIMARY KEY (TICKET_ID)
);

CREATE TABLE BOARDING_PASS (


BOARDING_ID VARCHAR(10) NOT NULL,
TICKET_ID VARCHAR(10) NOT NULL REFERENCES TICKET(TICKET_ID),
INSTANCE_ID VARCHAR(10) NOT NULL REFERENCES AIRCRAFT_INSTANCE(INSTANCE_ID),
CHECKIN_TYPE VARCHAR(10) NOT NULL,
PRIMARY KEY (BOARDING_ID)
);

CREATE TABLE BAGGAGE (


BAGGAGE_ID VARCHAR(10) NOT NULL,
BAGGAGE_WEIGHT FLOAT,
BAGGAGE_TYPE VARCHAR(40),
BOARDING_ID NOT NULL REFERENCES BOARDING_PASS(BOARDING_ID),
PRIMARY KEY (BAGGAGE_ID)
);
54
CREATE TABLE CANCELLATION (
CANCEL_ID VARCHAR(10) NOT NULL,
CANCEL_DATE DATE,
TICKET_ID VARCHAR(10) NOT NULL REFERENCES TICKET(TICKET_ID),
PRIMARY KEY (CANCEL_ID)
);

CREATE TABLE REFUND (


REFUND_ID VARCHAR(10) NOT NULL,
CANCEL_ID VARCHAR (10) NOT NULL REFERENCES CANCELLATION(CANCEL_ID),
TIME_ELASPED VARCHAR(10),
PRIMARY KEY (REFUND_ID)
);

CREATE TABLE DEPARTURE (


INSTANCE_ID VARCHAR(10) NOT NULL,
DEPARTURE_DATE DATE,
AIRPORT_ID VARCHAR(10) NOT NULL REFERENCES AIRPORT(AIRPORT_ID),
PRIMARY KEY (INSTANCE_ID)
);

CREATE TABLE ARRIVAL (


INSTANCE_ID VARCHAR(10) NOT NULL,
ARRIVAL_DATE DATE,
AIRPORT_ID VARCHAR(10) NOT NULL REFERENCES AIRPORT(AIRPORT_ID),
PRIMARY KEY (INSTANCE_ID)
);

CREATE TABLE SOURCE_ROUTE (


ROUTE_ID VARCHAR(10) NOT NULL REFERENCES ROUTE(ROUTE_ID),
AIRPORT_ID VARCHAR(10) NOT NULL REFERENCES AIRPORT(AIRPORT_ID),
PRIMARY KEY (ROUTE_ID)
);

CREATE TABLE DESTINATION_ROUTE (


ROUTE_ID VARCHAR(10) NOT NULL REFERENCES ROUTE(ROUTE_ID),
AIRPORT_ID VARCHAR(10) NOT NULL REFERENCES AIRPORT(AIRPORT_ID),
PRIMARY KEY (ROUTE_ID)
);

CREATE TABLE DISCOUNT (


TYPE_OF_CUSTOMER CHAR(20) ,
PERCENT_DISCOUNT FLOAT,
PRIMARY KEY (TYPE_OF_CUSTOMER)
);

CREATE TABLE PERSON (


PERSON_ID VARCHAR(10) NOT NULL,
F_NAME CHAR(20),
L_NAME CHAR(20),
DATE_OF_BIRTH DATE,
GENDER CHAR(1),
MOBILE_NO INTEGER,
OFFICE_NO INTEGER,
HOME_NO INTEGER, 55
EMAIL_ID VARCHAR(40),
HOUSE_NO INTEGER,
CITY CHAR(40),
STATE CHAR(40),
NATIONALITY CHAR(40),
PRIMARY KEY (PERSON_ID)
);

CREATE TABLE CUSTOMER_PROFILE (


PERSON_ID VARCHAR(10) NOT NULL REFERENCES PERSON (PERSON_ID),
PASSPORT_ID INTEGER,
FFFLAG INTEGER,
TOTAL_MILES INTEGER,
PRIMARY KEY (PERSON_ID)
);

CREATE TABLE AGENT (


PERSON_ID VARCHAR(10) NOT NULL REFERENCES PERSON (PERSON_ID),
AGENT_ACC_NO VARCHAR(10),
AMT_ACCOUNT FLOAT,
PRIMARY KEY (PERSON_ID)

);

CREATE TABLE EMPLOYEE (


PERSON_ID VARCHAR(10) NOT NULL REFERENCES PERSON (PERSON_ID),
AIRPORT_ID VARCHAR(10) REFERENCES AIRPORT(AIRPORT_ID),
EMPLOYEE_DESIG CHAR(20),
PRIMARY KEY (PERSON_ID)
);

CREATE TABLE BOOKING (


BOOKING_ID VARCHAR(10) NOT NULL,
NO_TICKETS INTEGER,
DATE_OF_BOOKING DATE,
INSTANCE_ID VARCHAR(10) NOT NULL REFERENCES AIRCRAFT_INSTANCE(INSTANCE_ID),
PERSON_ID VARCHAR(10) NOT NULL REFERENCES PERSON(PERSON_ID),
PRIMARY KEY (BOOKING_ID)

);

DML STATEMENTS FOR THE INDIAN AIRLINES

DML STATEMENTS OF INDIAN AIRLINES

/* ---------------------------------------------------------------------- */
/* "AIRCRAFT_TYPE" */
/* ---------------------------------------------------------------------- */
56
insert into AIRCRAFT_TYPE values('747',140,'BOEING');
insert into AIRCRAFT_TYPE values('707',320,'BOEING');
insert into AIRCRAFT_TYPE values('BS516',180,'BISCUIT');
insert into AIRCRAFT_TYPE values('AB513',160,'AEROCLUB');
insert into AIRCRAFT_TYPE values('757',200,'BOEING');

/* ---------------------------------------------------------------------- */
/* "AIRCRAFT" */
/* ---------------------------------------------------------------------- */

insert into AIRCRAFT values('AC1',50,70,90,1,'707');


insert into AIRCRAFT values('AC2',50,70,90,1,'AB513');
insert into AIRCRAFT values('AC3',50,70,90,1,'757');
insert into AIRCRAFT values('AC4',50,70,90,0,'BS516');
insert into AIRCRAFT values('AC5',50,70,90,1,'747');

/* ---------------------------------------------------------------------- */
/* "FARE" */
/* ---------------------------------------------------------------------- */

insert into FARE values('F1',28000,32000,48000,0.2);


insert into FARE values('F2',28000,32000,48000,0.2);
insert into FARE values('F3',28000,32000,48000,0.2);
insert into FARE values('F4',28000,32000,48000,0.2);
insert into FARE values('F5',28000,32000,48000,0.2);

/* ---------------------------------------------------------------------- */
/* "ROUTE" */
/* ---------------------------------------------------------------------- */

insert into ROUTE values('RI001','2:40',20,'F1');


insert into ROUTE values('RI002','3:10',10,'F3');
insert into ROUTE values('RI003','2:15',15,'F5');
insert into ROUTE values('RI004','3:45',09,'F2');
insert into ROUTE values('RI005','2:20',08,'F4');

/* ---------------------------------------------------------------------- */
/* "AIRCRAFT_INSTANCE" */
/* ---------------------------------------------------------------------- */
insert into AIRCRAFT_INSTANCE values('IAA1',30,40,50,'RI001','AC1');
insert into AIRCRAFT_INSTANCE values('IAA2',30,40,50,'RI002','AC5');
insert into AIRCRAFT_INSTANCE values('IAA3',30,40,50,'RI003','AC3');
insert into AIRCRAFT_INSTANCE values('IAA4',30,40,50,'RI004','AC2');
insert into AIRCRAFT_INSTANCE values('IAA5',30,40,50,'RI005','AC5');

/* ---------------------------------------------------------------------- */
/* "LOCATION" */
/* ---------------------------------------------------------------------- */

insert into LOCATION values('L1','hyderabad','AP','India');


insert into LOCATION values('L2','bangalore','KA','India');
insert into LOCATION values('L3','Delhi','DH','India');
insert into LOCATION values('L4','Mumbai','MH','India');
insert into LOCATION values('L5','Pune','MH','India');
57
/* ---------------------------------------------------------------------- */
/* "AIRPORT" */
/* ---------------------------------------------------------------------- */

insert into AIRPORT values('APORT1','Indira_Gandhi','L1');


insert into AIRPORT values('APORT2','Rajiv_Gandhi','L5');
insert into AIRPORT values('APORT3','Subhas_ChandraBose','L2');
insert into AIRPORT values('APORT4','Mahatma_Gandhi','L3');
insert into AIRPORT values('APORT5','TriColour','L4');
insert into AIRPORT values('APORT6','Bangalor_INT','L2');

/* ---------------------------------------------------------------------- */
/* "AIRCRAFT_SEATS" */
/* ---------------------------------------------------------------------- */

insert into AIRCRAFT_SEATS values('S1','w','Fc','T','IAA1');


insert into AIRCRAFT_SEATS values('S2','A','Fc','T','IAA1');
insert into AIRCRAFT_SEATS values('S3','w','Ec','F','IAA1');
insert into AIRCRAFT_SEATS values('S4','A','Ec','F','IAA1');
insert into AIRCRAFT_SEATS values('S5','w','Bc','F','IAA1');
insert into AIRCRAFT_SEATS values('S1','w','Fc','T','IAA2');
insert into AIRCRAFT_SEATS values('S2','A','Fc','T','IAA2');
insert into AIRCRAFT_SEATS values('S3','w','Ec','F','IAA2');
insert into AIRCRAFT_SEATS values('S4','A','Ec','F','IAA2');
insert into AIRCRAFT_SEATS values('S5','w','Bc','F','IAA2');
insert into AIRCRAFT_SEATS values('S1','w','Fc','T','IAA3');
insert into AIRCRAFT_SEATS values('S2','A','Fc','T','IAA3');
insert into AIRCRAFT_SEATS values('S3','w','Ec','F','IAA3');
insert into AIRCRAFT_SEATS values('S4','A','Bc','F','IAA3');
insert into AIRCRAFT_SEATS values('S5','w','Bc','F','IAA3');
insert into AIRCRAFT_SEATS values('S1','w','Fc','T','IAA5');
insert into AIRCRAFT_SEATS values('S2','A','Fc','T','IAA5');
insert into AIRCRAFT_SEATS values('S3','w','Ec','F','IAA5');
insert into AIRCRAFT_SEATS values('S4','A','Ec','F','IAA5');
insert into AIRCRAFT_SEATS values('S5','w','Bc','F','IAA5');

/* ---------------------------------------------------------------------- */
/* "PERSON" */
/* ----------------------------------------------------------------------
*/------------------------------------------------------------------------

insert into person values


('PID001','REDDDY','BR',TO_DATE('23/09/1986','DD/MM/YYYY'),'M',9883456123,65755996,12345678,'r
[email protected]','23','bangalore','kar','indian');

insert into person values


('PID002','harsha','DV',TO_DATE('23/09/1986','DD/MM/YYYY'),'M',9883456183,65766996,12347878,'har
[email protected]','89','bangalore','kar','indian');

insert into person values


('PID003','SRINIVAS','HR',TO_DATE('23/09/1986','DD/MM/YYYY'),'M',9883476193,65855996,
12345656,'[email protected]','29','bangalore','kar','indian');

insert into person values


('PID004','SUHEL','KHAN',TO_DATE('23/09/1986','DD/MM/YYYY'),'M',9882346193,658589096,
12346656,'[email protected]','29','bangalore','kar','indian');

/* ---------------------------------------------------------------------- */
/* "CUSTOMER_PROFILE" */
/* ---------------------------------------------------------------------- 58
*/------------------------------------------------------------------------------------------------------------------------
insert into customer_profile values ('PID004',2377877,1,100);
insert into customer_profile values ('PID001',1234567,0,100);

/* ---------------------------------------------------------------------- */
/* "EMPLOYEES" */
/* ----------------------------------------------------------------------
*/---------------------------------------------------------------------------------------------------------------------

insert into employee values ('PID002','APORT2','01');

/* ---------------------------------------------------------------------- */
/* "AGENT" */
/* ----------------------------------------------------------------------
*/------------------------------------------------------------------------------------------------------------------

insert into agent values ('PID003','6789023456',15000);

/* ---------------------------------------------------------------------- */
/* "BOOKING" */
/* ----------------------------------------------------------------------
*/-----------------------------------------------------------------------

insert into booking values ('BK005',01,TO_DATE('15/01/2006-19:00:00','DD/MM/YYYY-


HH24:MI:SS'),'IAA4','PID004');

insert into booking values ('BK001',01,TO_DATE('12/2/2005-17:00:00','DD/MM/YYYY-


HH24:MI:SS'),'IAA1','PID001');

insert into booking values ('BK002',01,TO_DATE('14/09/2005-18:00:00','DD/MM/YYYY-


HH24:MI:SS'),'IAA2','PID002');

insert into booking values ('BK003',01,TO_DATE('13/08/2006-19:00:00','DD/MM/YYYY-


HH24:MI:SS'),'IAA3','PID003');

insert into booking values ('BK004',01,TO_DATE('15/08/2006-19:00:00','DD/MM/YYYY-


HH24:MI:SS'),'IAA5','PID004');

/* "DISCOUNT" */
/* ---------------------------------------------------------------------- */
-----------------------------------------------------------------

insert into DISCOUNT values ('FF',30);


insert into DISCOUNT values ('CUST',15);
insert into DISCOUNT values ('EMP',25);

/* ---------------------------------------------------------------------- */
/* "TICKET" */ 59
/* ---------------------------------------------------------------------- */
insert into ticket values ('TA001','RI004','FF','BK005');
insert into ticket values ('TA005','RI002','EMP','BK002');
insert into ticket values ('TA003','RI003','AGT','BK003');
insert into ticket values ('TA004','RI005','FF','BK004');
insert into ticket values ('TA002','RI001','CUST','BK001');

/* ---------------------------------------------------------------------- */

/* ---------------------------------------------------------------------- */
/* "BOARDING_PASS" */
/* ----------------------------------------------------------------------
*/-------------------------------------------------------------------

insert into boarding_pass values ('BA001','TA001','IAA4','WEB');


insert into boarding_pass values ('BA002','TA002','IAA1','TELE');
insert into boarding_pass values ('BA003','TA003','IAA3','DIR');

insert into boarding_pass values ('BA005','TA005','IAA2','TELE');

/* ---------------------------------------------------------------------- */
/* "BAGGAGE */
/* ---------------------------------------------------------------------- */

insert into baggage values ('BG001',22.5,'SUITCASE','BA002');


insert into baggage values ('BG002',50,'KITBAG','BA001');
insert into baggage values ('BG003',10.5,'KITBAG','BA003');
insert into baggage values ('BG002',50,'KITBAG','BA005');

/* ---------------------------------------------------------------------- */
/* "CANCELLATION" */
/* ---------------------------------------------------------------------- */

insert into cancellation values ('CA001',TO_DATE('30/12/2004-17:00:00' ,'DD/MM/YYYY-


HH24:MI:SS'),'TA004');

/* ---------------------------------------------------------------------- */
/* "REFUND" */
/* ---------------------------------------------------------------------- */

insert into refund values ('RF001','CA001','25Hrs');

/* ---------------------------------------------------------------------- */
/* "ARRIVAL" */ 60
/* ---------------------------------------------------------------------- */
insert into ARRIVAL values('IAA1',TO_DATE('1/1/2007-19:40:00','DD/MM/YYYY-
HH24:MI:SS'),'APORT2');
insert into ARRIVAL values('IAA2',TO_DATE('1/1/2007-21:10:00',DD/MM/YYYY-HH24:MI:SS'),'APORT3');
insert into ARRIVAL values('IAA3',TO_DATE('1/1/2007-21:15:00',DD/MM/YYYY-HH24:MI:SS'),'Aport1');
insert into ARRIVAL values('IAA4',TO_DATE('1/1/2007-23:45:00','DD/MM/YYYY-
HH24:MI:SS'),'APORT3');
insert into ARRIVAL values('IAA5',TO_DATE('1/1/2007-23:20:00',DD/MM/YYYY-HH24:MI:SS'),'Aport1');

/* ---------------------------------------------------------------------- */
/* "DEPARTURE" */
/* ---------------------------------------------------------------------- */
insert into DEPARTURE values('IAA1',TO_DATE('1/1/2007-17:00:00','DD/MM/YYYY-
HH24:MI:SS'),'APORT1');
insert into DEPARTURE values('IAA2',TO_DATE('1/1/2007-18:00:00','DD/MM/YYYY-
HH24:MI:SS'),'APORT2');
insert into DEPARTURE values(''IAA3',TO_DATE('1/1/2007-19:00:00','DD/MM/YYYY-
HH24:MI:SS'),'APORT3');
insert into DEPARTURE values('IAA4',TO_DATE('1/1/2007-20:00:00','DD/MM/YYYY-
HH24:MI:SS'),'APORT1');
insert into DEPARTURE values('IAA5',TO_DATE('1/1/2007-21:00:00','DD/MM/YYYY-
HH24:MI:SS'),'APORT2');

/* ---------------------------------------------------------------------- */
/* "SOURCE_ROUTE" */
/* ----------------------------------------------------------------------
*/-------------------------------------------------------------------------

insert into SOURCE_ROUTE values ('RI001','APORT1');


insert into SOURCE_ROUTE values ('RI002','APORT2');
insert into SOURCE_ROUTE values('RI003','APORT3');
insert into SOURCE_ROUTE values('RI004','APORT1');
insert into SOURCE_ROUTE values('RI005','APORT2');
/* ---------------------------------------------------------------------- */
/* "DESTINATION_ROUTE */
/* ----------------------------------------------------------------------
*/-----------------------------------------------------------------------

insert into destination_route values ('RI001','APORT2');


insert into destinaton_route values ('RI002','APORT3');
insert into destination_route values ('RI003','APORT1');
insert into destination_route values ('RI004','APORT3');
insert into destination_route values ('RI005','APORT1');

61
QUERIES PROCESSED FOR THE MODEL.

QUERIES :

Display aircraft ID of model Boeing 747

1. Select DISTINCT Aircraft_ID from aircraft a,aircraft_type b where a.model_id =


b.model_id AND a.model_id='747'

2. All airports in Bangalore

AIRPORT_ID AIRPORT_N AME

APORT3 Subhas_ChandraBose

APORT6 Bangalor_INT

3. All flights flying to Bangalore

select Instance_ID from AIRCRAFT_INSTANCE a,location b,DESTINATION_ROUTE


c,airport d where a.route_ID=c.route_ID AND c.airport_ID=d.airport_ID AND
d.location_ID = b.location_ID and b.city = 'bangalore'
AIRCR AFT_ID

AC5
INSTANCE_ID

IAA2

4. Essential details of Frequent flier customers


62
select f_name,l_name,email_ID,mobile_no,total_miles from Person a
,customer_profile b where a.person_ID = b.person_ID and b.FFFlag = 1

F_N AME L_N AME EMAIL_ID MOBILE_NO TOTAL_MILES

harsha DV [email protected] 9883456183 1000

SRINIVAS HR [email protected] 9883476193 1500

5. Number of customers flying on date 13-APR-07

select count(BOARDING_ID) from departure a, boarding_pass b

where a.instance_ID = b.instance_ID and to_char(a.departure_date,'DD-MM-YYYY') = '13-04-2007'

COUNT(BO ARDING_ID)

63

You might also like