update all commands and havent tested
This commit is contained in:
81
MonetDB.py
81
MonetDB.py
@@ -1,19 +1,62 @@
|
|||||||
import pymonetdb
|
import pymonetdb
|
||||||
import time
|
import time
|
||||||
|
import re
|
||||||
|
|
||||||
#Creation_table
|
#Creation_table
|
||||||
createAirline = """CREATE TABLE airlines("IATA_CODE" VARCHAR(2) NOT NULL PRIMARY KEY UNIQUE, "AIRLINE" VARCHAR(99) NOT NULL);"""
|
createAirline = """CREATE TABLE airlines
|
||||||
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,
|
"IATA_CODE" VARCHAR(2) NOT NULL PRIMARY KEY UNIQUE,
|
||||||
"TAIL_NUMBER" VARCHAR(6), "ORIGIN_AIRPORT" VARCHAR(5), "DESTINATION_AIRPORT" VARCHAR(5), "SCHEDULED_DEPARTURE" INT, "DEPARTURE_TIME" INT,
|
"AIRLINE" VARCHAR(99) NOT NULL
|
||||||
"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,
|
createAirports = """CREATE TABLE airports
|
||||||
"CANCELLATION_REASON" VARCHAR(1), "AIR_SYSTEM_DELAY" INT, "SECURITY_DELAY" INT, "AIRLINE_DELAY" INT, "LATE_AIRCRAFT_DELAY" INT, "WEATHER_DELAY" INT);"""
|
(
|
||||||
|
"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
|
#Inserer_data
|
||||||
peuplementAirlines = """COPY INTO airlines FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\airlines.csv' USING DELIMITERS ',', E'\n', '\"';"""
|
peuplementAirlines = r"COPY INTO airlines FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\airlines.csv' USING DELIMITERS ',', E'\n', '\"';"
|
||||||
peuplementAirports = """COPY INTO airports FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\airports.csv' USING DELIMITERS ',', E'\n', '"' NULL AS '';"""
|
peuplementAirports = r"COPY INTO airports FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\airports.csv' USING DELIMITERS ',', E'\n', '\"' NULL AS '';"
|
||||||
peuplementFlights = """COPY INTO flights FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\flights.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():
|
def connect_monetdb():
|
||||||
@@ -22,18 +65,26 @@ def connect_monetdb():
|
|||||||
cursor = connection.cursor()
|
cursor = connection.cursor()
|
||||||
return connection, cursor
|
return connection, cursor
|
||||||
|
|
||||||
def create_table_monetdb(cursor):
|
def create_table_monetdb(connection,cursor):
|
||||||
cursor.execute(createAirline)
|
cursor.execute(createAirline)
|
||||||
cursor.execute(createAirports)
|
cursor.execute(createAirports)
|
||||||
cursor.execute(createFlights)
|
cursor.execute(createFlights)
|
||||||
|
connection.commit()
|
||||||
|
|
||||||
def create_data_monetdb(cursor):
|
def create_data_monetdb(connection,cursor):
|
||||||
cursor.execute(peuplementAirlines)
|
cursor.execute(r"COPY INTO airlines FROM 'C:\\Users\\Public\\2015_Flight_Delay_and_cancellations\\airlines.csv' USING DELIMITERS ',', E'\n', '\"';")
|
||||||
cursor.execute(peuplementFlights)
|
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)
|
cursor.execute(peuplementAirports)
|
||||||
|
connection.commit()
|
||||||
|
|
||||||
def requete_monetdb(cursor,str):
|
def requete_monetdb(connection,cursor,str):
|
||||||
cursor.execute(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")
|
||||||
|
|
||||||
def disconnect_monetdb(connection,cursor):
|
def disconnect_monetdb(connection,cursor):
|
||||||
cursor.close()
|
cursor.close()
|
||||||
|
|||||||
@@ -103,5 +103,16 @@ def requete_postgres(str):
|
|||||||
print("Cette requête prends:", temps, "seconde")
|
print("Cette requête prends:", temps, "seconde")
|
||||||
cursor.close()
|
cursor.close()
|
||||||
conn.close()
|
conn.close()
|
||||||
|
except (psycopg2.DatabaseError, Exception) as error:
|
||||||
|
print(error)
|
||||||
|
|
||||||
|
def reset_database_postgres():
|
||||||
|
try:
|
||||||
|
with connect_postgres() as conn:
|
||||||
|
with conn.cursor() as cursor:
|
||||||
|
cursor.execute('DROP TABLE IF EXISTS flights,airlines,airports')
|
||||||
|
conn.commit()
|
||||||
|
cursor.close()
|
||||||
|
conn.close()
|
||||||
except (psycopg2.DatabaseError, Exception) as error:
|
except (psycopg2.DatabaseError, Exception) as error:
|
||||||
print(error)
|
print(error)
|
||||||
Binary file not shown.
Binary file not shown.
11
main.py
11
main.py
@@ -1,5 +1,6 @@
|
|||||||
from MonetDB import *
|
from MonetDB import *
|
||||||
from PostgreSQL import *
|
from PostgreSQL import *
|
||||||
|
import re
|
||||||
|
|
||||||
#Monet DB
|
#Monet DB
|
||||||
requeteSelect1MonetDB = """SELECT * FROM flights WHERE "AIRLINE" = 'AA';"""
|
requeteSelect1MonetDB = """SELECT * FROM flights WHERE "AIRLINE" = 'AA';"""
|
||||||
@@ -26,11 +27,11 @@ if __name__ == '__main__':
|
|||||||
#PostgreSQL
|
#PostgreSQL
|
||||||
#create_tables_postgres()
|
#create_tables_postgres()
|
||||||
#create_data_postgres()
|
#create_data_postgres()
|
||||||
requete_postgres(str)
|
#requete_postgres(str)
|
||||||
|
|
||||||
#MonetDB
|
#MonetDB
|
||||||
conn, cursor =connect_monetdb()
|
conn, cursor =connect_monetdb()
|
||||||
create_table_monetdb(cursor)
|
create_table_monetdb(conn,cursor)
|
||||||
create_data_monetdb(cursor)
|
#create_data_monetdb(conn,cursor)
|
||||||
requete_monetdb(cursor, str)
|
#requete_monetdb(conn,cursor, str)
|
||||||
disconnect_monetdb(conn, cursor)
|
#disconnect_monetdb(conn, cursor)
|
||||||
|
|||||||
Reference in New Issue
Block a user