From 3ac700fb0a9a9f62d50165c6ae3fad82c90e6be6 Mon Sep 17 00:00:00 2001 From: Albert <87382668+alberrboyyy@users.noreply.github.com> Date: Wed, 29 Oct 2025 11:18:50 +0100 Subject: [PATCH] aaa --- README.md | 41 +++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 4b79dba..d46ca68 100644 --- a/README.md +++ b/README.md @@ -15,21 +15,21 @@ |MLD|![MLD](annexes/mld.png)| ### Création de la base de données -> La base de données a été crée à partir du fichier Looping que le professeur nous a donné. +> La base de données a été créée à partir du fichier Looping que le professeur nous a donné. > J'ai simplement copié le script LDD généré par Looping et je l'ai collé dans le terminal connecté à la base de données. ### Chargement des données -> Pour réaliser ce projet nous avons fait recours à docker pour pouvoir avoir un support sur lequel utiliser MySQL. -> J'ai utilisé le conteneur docker MySQL qui le lance avec la commande `docker run mysql`. +> Pour réaliser ce projet nous avons fait recours à docker pour disposer d'un environnement d'exécution pour MySQL. +> J'ai utilisé le conteneur docker MySQL lancé avec la commande `docker run mysql`. > > La prochaine étape est de copier les données dans le repertoire de confiance de MySQL : > ```docker cp C:\Users\%username%\Downloads\exports_tsv_final\* db:/var/lib/mysql-files/``` > -> Maintenant que les données sont prêtes on va pouvoir commancer l'import des données dans un ordre précis pour ne pas avoir de problème avec les clés étrangères. Les tables qui n'ont aucune clé étrangère seront toujours les premières à être importées. +> Maintenant que les données sont prêtes on va pouvoir commencer l'import des données dans un ordre précis pour ne pas avoir de problème avec les clés étrangères. Les tables qui n'ont aucune clé étrangère seront toujours les premières à être importées. -##### Importation des données dans la trable `t_passager` +##### Importation des données dans la table `t_passager` ```sql LOAD DATA INFILE '/var/lib/mysql-files/t_passager.tsv' INTO TABLE t_passager @@ -442,7 +442,7 @@ ORDER BY CREATE INDEX idx_vol_heure_depart ON t_vol(heure_depart); ``` -> Voici les resultats avant et après : +> Voici les résultats avant et après : > Avant : `835 rows in set (0.043 sec)` > Après : `835 rows in set (0.004 sec)` @@ -451,11 +451,11 @@ CREATE INDEX idx_vol_heure_depart ON t_vol(heure_depart); CREATE INDEX idx_vol_heure_depart ON t_vol(heure_depart); ``` -> Voici les resultats avant et après : +> Voici les résultats avant et après : > Avant : `4115 rows in set (0.354 sec)` > Après : `4115 rows in set (0.265 sec)` -> Ici, l'index est le même car dans les deux `WHERE`, `companie_fk` revient une fois et `heure_depart` revient aux deux endroits. Il y a l'index automatique sur `companie_fk`, `heure_depart` est donc la seule colonne a indexer. +> Ici, l'index est le même car dans les deux `WHERE`, `companie_fk` revient une fois et `heure_depart` revient aux deux endroits. Il y a l'index automatique sur `companie_fk`, `heure_depart` est donc la seule colonne à indexer. ## Utilisateurs et rôles @@ -464,7 +464,7 @@ CREATE INDEX idx_vol_heure_depart ON t_vol(heure_depart); ##### Creation du rôle ```sql -CREATE ROLE 'role_administarteur'@'localhost'; +CREATE ROLE 'role_administrateur'@'localhost'; ``` ##### Assignation des permissions @@ -474,7 +474,7 @@ GRANT ALL PRIVILEGES ON db_aeroport.* TO 'role_administrateur'@'localhost' WITH ##### Création de l'utilisateur ```sql -CREATE USER 'administrateur'@'localhost' IDENTIFIED BY 'administateur'; +CREATE USER 'administrateur'@'localhost' IDENTIFIED BY 'administrateur'; ``` ##### Assignation du rôle à l'utilisateur @@ -491,8 +491,8 @@ CREATE ROLE 'role_gestionnaire_vols'@'localhost'; ##### Assignation des permissions ```sql -GRANT SELECT, INSERT, UPDATE ON db_aeroport.t_vol TO 'role_geastionnaire_vols'@'localhost'; -GRANT SELECT, INSERT, UPDATE ON db_aeroport.t_programme_vol TO 'role_geastionnaire_vols'@'localhost'; +GRANT SELECT, INSERT, UPDATE ON db_aeroport.t_vol TO 'role_gestionnaire_vols'@'localhost'; +GRANT SELECT, INSERT, UPDATE ON db_aeroport.t_programme_vol TO 'role_gestionnaire_vols'@'localhost'; GRANT SELECT ON db_aeroport.t_avion TO 'role_gestionnaire_vols'@'localhost'; ``` @@ -583,15 +583,12 @@ GRANT 'role_analyste'@'localhost' TO 'usr_analyste'@'localhost'; ```sql START TRANSACTION; --- Supprimer le vol -DELETE FROM t_vol -WHERE vol_id = 25; - --- Supprimer les réservations DELETE FROM t_reservation WHERE vol_fk = 25; --- Valider les changements +DELETE FROM t_vol +WHERE vol_id = 25; + COMMIT; ``` @@ -614,6 +611,10 @@ ELSE END IF; ``` - -> On lance une transaction pour controller si le siège 12A pour le vol 10 est déjà prit, si il n'est pas prit on met 0 dans la variable `@seat_taken` sinon on met 1. +> On lance une transaction pour controller si le siège 12A pour le vol 10 est déjà pris, si il n'est pas pris on met 0 dans la variable `@seat_taken` sinon on met 1. > Si le siège est vide (@seat_taken = 0) alors on y ajoute un passager et on `COMMIT;`, sinon on `ROLLBACK;` + +## Prompts IA + +### Prompt 1 +