PRAGMA foreign_keys = ON;

PRAGMA writable_schema = 1;
DELETE FROM sqlite_master WHERE type IN ("table", "index", "trigger");
PRAGMA writable_schema = 0;
VACUUM;

CREATE TABLE "airlines" (
"uid" INT,
"Airline" TEXT,
"Country" TEXT,
PRIMARY KEY ("uid")
);

CREATE TABLE "airports" (
"City" TEXT,
"AirportCode" TEXT UNIQUE,
"AirportName" TEXT,
"Country" TEXT,
PRIMARY KEY ("AirportCode")
);

CREATE TABLE "flights" (
"Airline" INT,
"FlightNo" INT,
"SourceAirport" TEXT,
"DestAirport" TEXT,
PRIMARY KEY ("Airline", "FlightNo"),
FOREIGN KEY ("SourceAirport") REFERENCES "airports"("AirportCode"),
FOREIGN KEY ("DestAirport") REFERENCES "airports"("AirportCode")
);





INSERT INTO "airlines" VALUES ("1", "United Airlines", "United States");
INSERT INTO "airlines" VALUES ("2", "Delta Airlines", "United States");
INSERT INTO "airlines" VALUES ("3", "British Airways", "United Kingdom");
INSERT INTO "airlines" VALUES ("4", "Lufthansa", "Germany");
INSERT INTO "airlines" VALUES ("5", "Emirates", "United Arab Emirates");
INSERT INTO "airports" VALUES ("Aberdeen", "ABZ", "Aberdeen International Airport", "United Kingdom");
INSERT INTO "airports" VALUES ("New York", "JFK", "John F. Kennedy International Airport", "United States");
INSERT INTO "airports" VALUES ("London", "LHR", "Heathrow Airport", "United Kingdom");
INSERT INTO "airports" VALUES ("Frankfurt", "FRA", "Frankfurt Airport", "Germany");
INSERT INTO "airports" VALUES ("Dubai", "DXB", "Dubai International Airport", "United Arab Emirates");
INSERT INTO "airports" VALUES ("Chicago", "ORD", "O'Hare International Airport", "United States");
INSERT INTO "airports" VALUES ("Los Angeles", "LAX", "Los Angeles International Airport", "United States");
INSERT INTO "flights" VALUES ("1", "100", "JFK", "ABZ");
INSERT INTO "flights" VALUES ("1", "101", "ORD", "ABZ");
INSERT INTO "flights" VALUES ("1", "102", "LAX", "LHR");
INSERT INTO "flights" VALUES ("2", "200", "JFK", "ABZ");
INSERT INTO "flights" VALUES ("3", "300", "LHR", "ABZ");
INSERT INTO "flights" VALUES ("1", "103", "LHR", "ABZ");
INSERT INTO "flights" VALUES ("4", "400", "FRA", "ABZ");
INSERT INTO "flights" VALUES ("5", "500", "DXB", "LHR");
INSERT INTO "flights" VALUES ("1", "104", "ORD", "LAX");
INSERT INTO "flights" VALUES ("1", "105", "JFK", "DXB");