| | import pandas as pd |
| | from sqlalchemy import create_engine, Column, Integer, String, Float, DateTime |
| | from sqlalchemy.sql import text |
| | import os |
| | from dotenv import load_dotenv |
| |
|
| | |
| | load_dotenv() |
| | DATABASE_URL = os.getenv("DATABASE_URL") |
| | engine = create_engine(DATABASE_URL) |
| |
|
| | with engine.connect() as conn: |
| | conn.execute(text("DROP VIEW IF EXISTS employees_full CASCADE")) |
| | conn.commit() |
| |
|
| | |
| | df_sirh = pd.read_csv(r'C:\Users\Kevin\projects\OC P4\Projet 4\extrait_sirh.csv') |
| | df_eval = pd.read_csv(r'C:\Users\Kevin\projects\OC P4\Projet 4\extrait_eval.csv') |
| | df_eval['eval_number'] = pd.to_numeric(df_eval['eval_number'].str[2:], errors='raise') |
| | df_sondage = pd.read_csv(r'C:\Users\Kevin\projects\OC P4\Projet 4\extrait_sondage.csv') |
| |
|
| |
|
| | |
| | df_sirh.to_sql('employees_sirh', engine, if_exists='replace', index=False) |
| | df_eval.to_sql('employees_eval', engine, if_exists='replace', index=False) |
| | df_sondage.to_sql('employees_sondage', engine, if_exists='replace', index=False) |
| |
|
| | print("Data inserted successfully!") |
| |
|
| | with engine.connect() as conn: |
| | conn.execute(text(""" |
| | CREATE OR REPLACE VIEW employees_full AS |
| | SELECT * FROM employees_sirh s |
| | INNER JOIN employees_sondage so ON s.id_employee = CAST(so.code_sondage AS INTEGER) |
| | INNER JOIN employees_eval e ON s.id_employee = CAST(e.eval_number AS INTEGER) |
| | """)) |
| | conn.commit() |
| |
|
| | print("View created successfully!") |