import pymonetdb import time import re #Creation_table createAirline = """CREATE TABLE airlines ( "IATA_CODE" VARCHAR(2) NOT NULL PRIMARY KEY UNIQUE, "AIRLINE" VARCHAR(99) NOT NULL );""" createAirports = """CREATE TABLE airports ( "IATA_CODE" VARCHAR(3) NOT NULL PRIMARY KEY UNIQUE, "AIRPORT" VARCHAR(100), "CITY" VARCHAR(40), "STATE" VARCHAR(2), "COUNTRY" VARCHAR(40), "LATITUDE" REAL, "LONGITUDE" REAL );""" createFlights = """CREATE TABLE flights ( "YEAR" INT, "MONTH" INT, "DAY" INT, "DAY_OF_WEEK" INT, "AIRLINE" VARCHAR(2), "FLIGHT_NUMBER" INT, "TAIL_NUMBER" VARCHAR(6), "ORIGIN_AIRPORT" VARCHAR(5), "DESTINATION_AIRPORT" VARCHAR(5), "SCHEDULED_DEPARTURE" INT, "DEPARTURE_TIME" INT, "DEPARTURE_DELAY" INT, "TAXI_OUT" INT, "WHEELS_OFF" INT, "SCHEDULED_TIME" INT, "ELAPSED_TIME" INT, "AIR_TIME" INT, "DISTANCE" INT, "WHEELS_ON" INT, "TAXI_IN" INT, "SCHEDULED_ARRIVAL" INT, "ARRIVAL_TIME" INT, "ARRIVAL_DELAY" INT, "DIVERTED" INT, "CANCELLED" INT, "CANCELLATION_REASON" VARCHAR(1), "AIR_SYSTEM_DELAY" INT, "SECURITY_DELAY" INT, "AIRLINE_DELAY" INT, "LATE_AIRCRAFT_DELAY" INT, "WEATHER_DELAY" INT );""" #Inserer_data peuplementAirlines = r"COPY INTO airlines FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\airlines.csv' USING DELIMITERS ',', E'\n', '\"';" peuplementAirports = r"COPY INTO airports FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\airports.csv' USING DELIMITERS ',', E'\n', '\"' NULL AS '';" peuplementFlights = r"COPY INTO flights FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\flights.csv' USING DELIMITERS ',', E'\n', '\"' NULL AS '';" def connect_monetdb(): connection = pymonetdb.connect(username="monetdb", password="monetdb", hostname="localhost", database="demo") # create a cursor cursor = connection.cursor() return connection, cursor def create_table_monetdb(connection,cursor): cursor.execute(createAirline) cursor.execute(createAirports) cursor.execute(createFlights) connection.commit() def create_data_monetdb(connection,cursor): cursor.execute(r"COPY INTO airlines FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\airlines.csv' USING DELIMITERS ',', E'\n', '\"';") cursor.execute(r"COPY INTO airports FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\airports.csv' USING DELIMITERS ',', E'\n', '\"' NULL AS '';") cursor.execute(peuplementAirports) connection.commit() def requete_monetdb(connection,cursor,str): cursor.execute(str) connection.commit() def reset_data_monetdb(connection,cursor): cursor.execute("DROP TABLE IF EXISTS airlines") cursor.execute("DROP TABLE IF EXISTS airports") cursor.execute("DROP TABLE IF EXISTS flights") connection.commit() def disconnect_monetdb(connection,cursor): cursor.close() connection.close()