diff --git a/FAIT.pdf b/FAIT.pdf new file mode 100644 index 0000000..201b21f Binary files /dev/null and b/FAIT.pdf differ diff --git a/sql/script_creation_dataset.sql b/sql/script_creation_dataset.sql index 4aea543..1bb42cd 100644 --- a/sql/script_creation_dataset.sql +++ b/sql/script_creation_dataset.sql @@ -1,285 +1,340 @@ -CREATE TABLE classement ( - PRIMARY KEY (idclassement), - idclassement INTEGER AUTO_INCREMENT, - nom VARCHAR(42), - portee VARCHAR(42) -); +-- Generated by Mocodo 4.2.4 +CREATE TABLE + carte ( + PRIMARY KEY (idcarte), + idcarte INTEGER NOT NULL, + niveau VARCHAR(42), + img VARCHAR(42), + points VARCHAR(42) + ); -CREATE TABLE classement_equipe ( - PRIMARY KEY (idclassement), - idclassement INTEGER AUTO_INCREMENT -); +CREATE TABLE + choisit_main ( + PRIMARY KEY (idjoueur, idpartie, num_tour), + idjoueur INTEGER NOT NULL, + idpartie INTEGER NOT NULL, + num_tour INTEGER NOT NULL, + nb_de_rouge VARCHAR(42), + nb_de_jaune VARCHAR(42), + nb_de_bleu VARCHAR(42) + ); -CREATE TABLE classement_individuel ( - PRIMARY KEY (idclassement), - idclassement INTEGER AUTO_INCREMENT -); +CREATE TABLE + classement ( + PRIMARY KEY (idclassement), + idclassement INTEGER AUTO_INCREMENT, + nom VARCHAR(42), + portee VARCHAR(42) + ); -CREATE TABLE equipe ( - PRIMARY KEY (idequipe), - idequipe INTEGER AUTO_INCREMENT, - nom VARCHAR(42) -); +CREATE TABLE + classement_individuel ( + PRIMARY KEY (idclassement, idjoueur), + idclassement INTEGER AUTO_INCREMENT, + idjoueur INTEGER NOT NULL, + rang INTEGER DEFAULT NULL + ); -CREATE TABLE est_classe ( - PRIMARY KEY (idjoueur, idclassement), - idjoueur INTEGER NOT NULL, - idclassement INTEGER NOT NULL, - rang VARCHAR(42) -); +CREATE TABLE + comprend ( + PRIMARY KEY (idpartie, num_tour, idlancer), + idpartie INTEGER NOT NULL, + num_tour INTEGER NOT NULL, + idlancer INTEGER NOT NULL + ); -CREATE TABLE est_lie_a ( - PRIMARY KEY (idclassement_composee, idclassement_composante), - idclassement_composee INTEGER, - idclassement_composante INTEGER, - quantite VARCHAR(42) -); +CREATE TABLE + contrainte ( + PRIMARY KEY (idcontrainte), + idcontrainte INTEGER NOT NULL, + couleur VARCHAR(42) + ); -CREATE TABLE joueur ( - PRIMARY KEY (idjoueur), - idjoueur INTEGER AUTO_INCREMENT, - nom VARCHAR(42), - prenom VARCHAR(42), - pseudo VARCHAR(42), - annee_nais YEAR, - email VARCHAR(80), - idequipe INTEGER NULL DEFAULT NULL -); +CREATE TABLE + de_lance ( + PRIMARY KEY (idlancer, rang_couleur_valeur), + idlancer INTEGER NOT NULL, + rang_couleur_valeur VARCHAR(42) NOT NULL + ); -CREATE TABLE participe ( - PRIMARY KEY (idtournoi, niveau, idjoueur), - idtournoi INTEGER NOT NULL, - niveau VARCHAR(42) NOT NULL, - idjoueur INTEGER NOT NULL, - a_joue VARCHAR(42), - est_qualifie VARCHAR(42) -); +CREATE TABLE + effectue ( + PRIMARY KEY (idjoueur, idlancer), + idjoueur INTEGER NOT NULL, + idlancer INTEGER NOT NULL + ); -CREATE TABLE phase ( - PRIMARY KEY (idtournoi, niveau), - idtournoi INTEGER AUTO_INCREMENT, - niveau VARCHAR(42) NOT NULL, - date_p DATE -); +CREATE TABLE + equipe ( + PRIMARY KEY (idequipe), + idequipe INTEGER AUTO_INCREMENT, + nom VARCHAR(42) + ); -CREATE TABLE sont_classes ( - PRIMARY KEY (idequipe, idclassement), - idequipe INTEGER NOT NULL, - idclassement INTEGER NOT NULL, - rang VARCHAR(42) -); +CREATE TABLE + classement_equipe ( + PRIMARY KEY (idclassement, idequipe), + idclassement INTEGER AUTO_INCREMENT, + idequipe INTEGER NOT NULL, + rang INTEGER DEFAULT NULL + ); -CREATE TABLE tournoi ( - PRIMARY KEY (idtournoi), - idtournoi INTEGER AUTO_INCREMENT, - nom VARCHAR(42), - date_deb DATE, - date_fin DATE -); +CREATE TABLE + est_classe ( + PRIMARY KEY (idjoueur, idclassement), + idjoueur INTEGER NOT NULL, + idclassement INTEGER NOT NULL, + rang VARCHAR(42) + ); -ALTER TABLE - classement_equipe -ADD - FOREIGN KEY (idclassement) REFERENCES classement (idclassement); +CREATE TABLE + est_compose ( + PRIMARY KEY (idcarte, idplateau), + idcarte INTEGER NOT NULL, + idplateau INTEGER NOT NULL, + rang VARCHAR(42) + ); -ALTER TABLE - classement_individuel -ADD - FOREIGN KEY (idclassement) REFERENCES classement (idclassement); +CREATE TABLE + est_contrainte ( + PRIMARY KEY (idcarte, idcontrainte), + idcarte INTEGER NOT NULL, + idcontrainte INTEGER NOT NULL + ); -ALTER TABLE - est_classe -ADD - FOREIGN KEY (idclassement) REFERENCES classement_individuel (idclassement); +CREATE TABLE + est_en_lien ( + PRIMARY KEY (idclassement_1, idclassement_2), + idclassement_1 INTEGER NOT NULL, + idclassement_2 INTEGER NOT NULL, + rang VARCHAR(42) + ); -ALTER TABLE - est_classe -ADD - FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); +CREATE TABLE + est_en_position ( + PRIMARY KEY (idjoueur, idcarte, idpartie, num_tour), + idjoueur INTEGER NOT NULL, + idcarte INTEGER NOT NULL, + idpartie INTEGER NOT NULL, + num_tour INTEGER NOT NULL, + position VARCHAR(42) + ); -ALTER TABLE - est_lie_a -ADD - FOREIGN KEY (idclassement_composante) REFERENCES classement (idclassement); +CREATE TABLE + est_lie_a ( + PRIMARY KEY (idclassement_composee, idclassement_composante), + idclassement_composee INTEGER, + idclassement_composante INTEGER, + quantite VARCHAR(42) + ); -ALTER TABLE - est_lie_a -ADD - FOREIGN KEY (idclassement_composee) REFERENCES classement (idclassement); +CREATE TABLE + face_de_de ( + PRIMARY KEY (idcontrainte), + idcontrainte INTEGER NOT NULL, + valeur VARCHAR(42) + ); -ALTER TABLE - joueur -ADD - FOREIGN KEY (idequipe) REFERENCES equipe (idequipe); +CREATE TABLE + joue ( + PRIMARY KEY (idjoueur, idpartie), + idjoueur INTEGER NOT NULL, + idpartie INTEGER NOT NULL, + couleur_pion VARCHAR(42), + rang VARCHAR(42) + ); -ALTER TABLE - participe -ADD - FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); +CREATE TABLE + joueur ( + PRIMARY KEY (idjoueur), + idjoueur INTEGER AUTO_INCREMENT, + nom VARCHAR(42), + prenom VARCHAR(42), + pseudo VARCHAR(42), + annee_nais YEAR, + email VARCHAR(80), + idequipe INTEGER NULL DEFAULT NULL + ); -ALTER TABLE - participe -ADD - FOREIGN KEY (idtournoi, niveau) REFERENCES phase (idtournoi, niveau); +CREATE TABLE + meme_au_choix ( + PRIMARY KEY (idcontrainte), + idcontrainte INTEGER NOT NULL, + nombre VARCHAR(42), + couleur VARCHAR(42) + ); -ALTER TABLE - phase -ADD - FOREIGN KEY (idtournoi) REFERENCES tournoi (idtournoi); +CREATE TABLE + participe ( + PRIMARY KEY (idtournoi, niveau, idjoueur), + idtournoi INTEGER, + niveau VARCHAR(42), + idjoueur INTEGER NOT NULL, + a_joue tinyint (1) DEFAULT NULL, + est_qualifie tinyint (1) DEFAULT NULL + ); -ALTER TABLE - sont_classes -ADD - FOREIGN KEY (idclassement) REFERENCES classement_equipe (idclassement); +CREATE TABLE + partie ( + PRIMARY KEY (idpartie), + idpartie INTEGER NOT NULL, + date_partie VARCHAR(42), + horaire VARCHAR(42), + duree VARCHAR(42), + etat VARCHAR(42), + idplateau INTEGER, + idtournoi INTEGER, + niveau VARCHAR(42), + UNIQUE (idtournoi, niveau) + ); -ALTER TABLE - sont_classes -ADD - FOREIGN KEY (idequipe) REFERENCES equipe (idequipe); +CREATE TABLE + phase ( + PRIMARY KEY (idtournoi, niveau), + idtournoi INTEGER AUTO_INCREMENT, + niveau VARCHAR(42), + date_p DATE + ); -CREATE TABLE comprend ( - PRIMARY KEY (idpartie, num_tour, idlancer), - idpartie INTEGER NOT NULL, - num_tour INTEGER NOT NULL, - idlancer INTEGER NOT NULL -); +CREATE TABLE + plateau ( + PRIMARY KEY (idplateau), + idplateau INTEGER AUTO_INCREMENT, + taille VARCHAR(42) + ); -CREATE TABLE effectue ( - PRIMARY KEY (rang_couleur_valeur, idjoueur, idlancer), - rang_couleur_valeur VARCHAR(42) NOT NULL, - idjoueur INTEGER NOT NULL, - idlancer INTEGER NOT NULL -); +CREATE TABLE + serie_au_choix ( + PRIMARY KEY (idcontrainte), + idcontrainte INTEGER NOT NULL, + nombre VARCHAR(42) + ); -CREATE TABLE partie ( - PRIMARY KEY (idpartie), - idpartie INTEGER AUTO_INCREMENT, - date_partie DATE, - horaire VARCHAR(42), - duree VARCHAR(42), - etat VARCHAR(42) -); +CREATE TABLE + seuil_de_des ( + PRIMARY KEY (idcontrainte), + idcontrainte INTEGER AUTO_INCREMENT, + valeur VARCHAR(42), + sens VARCHAR(42) + ); -CREATE TABLE tour ( - PRIMARY KEY (idpartie, num_tour), - num_tour INTEGER NOT NULL, - idpartie INTEGER NOT NULL -); +CREATE TABLE + sont_classes ( + PRIMARY KEY (idequipe, idclassement), + idequipe INTEGER NOT NULL, + idclassement INTEGER NOT NULL, + rang VARCHAR(42) + ); -ALTER TABLE - comprend -ADD - FOREIGN KEY (idpartie, num_tour) REFERENCES tour (idpartie, num_tour); +CREATE TABLE + tente_validation ( + PRIMARY KEY (idpartie, num_tour, idjoueur, idcarte), + idpartie INTEGER NOT NULL, + num_tour INTEGER NOT NULL, + idjoueur INTEGER NOT NULL, + idcarte INTEGER NOT NULL, + nb_tentatives VARCHAR(42) + ); -ALTER TABLE - effectue -ADD - FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); +CREATE TABLE + tour ( + PRIMARY KEY (idpartie, num_tour), + idpartie INTEGER NOT NULL, + num_tour INTEGER NOT NULL + ); -ALTER TABLE - tour -ADD - FOREIGN KEY (idpartie) REFERENCES partie (idpartie); +CREATE TABLE + tournoi ( + PRIMARY KEY (idtournoi), + idtournoi INTEGER AUTO_INCREMENT, + nom VARCHAR(42), + date_deb DATE, + date_fin DATE + ); -CREATE TABLE carte ( - PRIMARY KEY (idcarte), - idcarte INTEGER AUTO_INCREMENT, - niveau VARCHAR(42), - img VARCHAR(42), - points VARCHAR(42) -); +CREATE TABLE + valide ( + PRIMARY KEY (idcontrainte, idlancer), + idcontrainte INTEGER NOT NULL, + idlancer INTEGER NOT NULL + ); -CREATE TABLE est_compose ( - PRIMARY KEY (idcarte, idplateau), - idcarte INTEGER NOT NULL, - idplateau INTEGER NOT NULL, - rang VARCHAR(42) -); +ALTER TABLE choisit_main ADD FOREIGN KEY (idpartie, num_tour) REFERENCES tour (idpartie, num_tour); -CREATE TABLE plateau ( - PRIMARY KEY (idplateau), - idplateau INTEGER AUTO_INCREMENT, - taille VARCHAR(42) -); +ALTER TABLE choisit_main ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); -ALTER TABLE - est_compose -ADD - FOREIGN KEY (idplateau) REFERENCES plateau (idplateau); +ALTER TABLE classement_equipe ADD FOREIGN KEY (idclassement) REFERENCES classement (idclassement); -ALTER TABLE - est_compose -ADD - FOREIGN KEY (idcarte) REFERENCES carte (idcarte); +ALTER TABLE classement_equipe ADD FOREIGN KEY (idequipe) REFERENCES equipe (idequipe); -CREATE TABLE choisit_main ( - PRIMARY KEY (idjoueur, num_tour), - idjoueur INTEGER NOT NULL, - num_tour INTEGER NOT NULL, - nb_de_rouge VARCHAR(42), - nb_de_jaune VARCHAR(42), - nb_de_bleu VARCHAR(42) -); +ALTER TABLE classement_individuel ADD FOREIGN KEY (idclassement) REFERENCES classement (idclassement); -ALTER TABLE - choisit_main -ADD - FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); +ALTER TABLE classement_individuel ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); -CREATE TABLE tente_validation ( - PRIMARY KEY (num_tour, idjoueur, idcarte), - num_tour INTEGER NOT NULL, - idjoueur INTEGER NOT NULL, - idcarte INTEGER NOT NULL, - nb_tentatives VARCHAR(42) -); +ALTER TABLE comprend ADD FOREIGN KEY (idpartie, num_tour) REFERENCES tour (idpartie, num_tour); -ALTER TABLE - tente_validation -ADD - FOREIGN KEY (idcarte) REFERENCES carte (idcarte); +ALTER TABLE effectue ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); -ALTER TABLE - tente_validation -ADD - FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); +ALTER TABLE est_classe ADD FOREIGN KEY (idclassement) REFERENCES classement_individuel (idclassement); -CREATE TABLE contrainte ( - PRIMARY KEY (idcontrainte), - idcontrainte INTEGER AUTO_INCREMENT, - couleur VARCHAR(42) -); +ALTER TABLE est_classe ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); -CREATE TABLE face_de_de ( - PRIMARY KEY (idcontrainte), - idcontrainte INTEGER AUTO_INCREMENT, - valeur VARCHAR(42) -); +ALTER TABLE est_compose ADD FOREIGN KEY (idplateau) REFERENCES plateau (idplateau); -CREATE TABLE serie_au_choix ( - PRIMARY KEY (idcontrainte), - idcontrainte INTEGER AUTO_INCREMENT, - nombre VARCHAR(42) -); +ALTER TABLE est_compose ADD FOREIGN KEY (idcarte) REFERENCES carte (idcarte); -CREATE TABLE seuil_de_des ( - PRIMARY KEY (idcontrainte), - idcontrainte INTEGER AUTO_INCREMENT, - valeur VARCHAR(42), - sens VARCHAR(42) -); +ALTER TABLE est_contrainte ADD FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); -ALTER TABLE - face_de_de -ADD - FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); +ALTER TABLE est_contrainte ADD FOREIGN KEY (idcarte) REFERENCES carte (idcarte); -ALTER TABLE - serie_au_choix -ADD - FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); +ALTER TABLE est_en_lien ADD FOREIGN KEY (idclassement_2) REFERENCES classement (idclassement); -ALTER TABLE - seuil_de_des -ADD - FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); \ No newline at end of file +ALTER TABLE est_en_lien ADD FOREIGN KEY (idclassement_1) REFERENCES classement (idclassement); + +ALTER TABLE est_en_position ADD FOREIGN KEY (idpartie, num_tour) REFERENCES tour (idpartie, num_tour); + +ALTER TABLE est_en_position ADD FOREIGN KEY (idcarte) REFERENCES carte (idcarte); + +ALTER TABLE est_en_position ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); + +ALTER TABLE est_lie_a ADD FOREIGN KEY (idclassement_composante) REFERENCES classement (idclassement); + +ALTER TABLE est_lie_a ADD FOREIGN KEY (idclassement_composee) REFERENCES classement (idclassement); + +ALTER TABLE face_de_de ADD FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); + +ALTER TABLE joue ADD FOREIGN KEY (idpartie) REFERENCES partie (idpartie); + +ALTER TABLE joue ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); + +ALTER TABLE joueur ADD FOREIGN KEY (idequipe) REFERENCES equipe (idequipe); + +ALTER TABLE meme_au_choix ADD FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); + +ALTER TABLE participe ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); + +ALTER TABLE participe ADD FOREIGN KEY (idtournoi, niveau) REFERENCES phase (idtournoi, niveau); + +ALTER TABLE partie ADD FOREIGN KEY (idtournoi, niveau) REFERENCES phase (idtournoi, niveau); + +ALTER TABLE partie ADD FOREIGN KEY (idplateau) REFERENCES plateau (idplateau); + +ALTER TABLE phase ADD FOREIGN KEY (idtournoi) REFERENCES tournoi (idtournoi); + +ALTER TABLE serie_au_choix ADD FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); + +ALTER TABLE seuil_de_des ADD FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); + +ALTER TABLE sont_classes ADD FOREIGN KEY (idclassement) REFERENCES classement_equipe (idclassement); + +ALTER TABLE sont_classes ADD FOREIGN KEY (idequipe) REFERENCES equipe (idequipe); + +ALTER TABLE tente_validation ADD FOREIGN KEY (idcarte) REFERENCES carte (idcarte); + +ALTER TABLE tente_validation ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); + +ALTER TABLE tente_validation ADD FOREIGN KEY (idpartie, num_tour) REFERENCES tour (idpartie, num_tour); + +ALTER TABLE tour ADD FOREIGN KEY (idpartie) REFERENCES partie (idpartie); + +ALTER TABLE valide ADD FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); \ No newline at end of file diff --git a/sql/script_migration_data.sql b/sql/script_migration_data.sql index 44306f7..5f3774f 100644 --- a/sql/script_migration_data.sql +++ b/sql/script_migration_data.sql @@ -1,27 +1,71 @@ INSERT INTO - `partie`( - `idpartie`, - `date_partie`, - `horaire`, - `duree`, - `etat` - ) -SELECT - DISTINCT id_partie, - dateP, - heureP, - ROUND(durée_secondes / 60), - CASE - état - WHEN 'T' THEN 'terminée' - WHEN 'AV' THEN 'a venir' - WHEN 'EC' THEN 'en cours' - END + `contrainte` (`idcontrainte`, `couleur`) +SELECT DISTINCT + id_contrainte, + couleur FROM - donnees_fournies.instances1; + donnees_fournies.instances2; INSERT INTO - `joueur`( + `carte` (`idcarte`, `niveau`, `img`, `points`) +SELECT DISTINCT + `id_carte`, + `niveau`, + `fichier`, + `points` +FROM + donnees_fournies.instances2; + +INSERT INTO + `classement` (`idclassement`, `nom`, `portee`) +SELECT DISTINCT + `idC`, + `nom`, + `portée` +FROM + donnees_fournies.classement; + +INSERT INTO + `equipe` (`idequipe`, `nom`) +SELECT DISTINCT + `idE`, + `nom` +FROM + donnees_fournies.équipe; + +INSERT INTO + `tournoi` (`idtournoi`, `nom`, `date_deb`, `date_fin`) +SELECT + `idT`, + `nom`, + `dateDeb`, + `dateFin` +FROM + donnees_fournies.tournoi; + +INSERT INTO + `joueur` ( + `idjoueur`, + `nom`, + `prenom`, + `pseudo`, + `annee_nais`, + `email`, + `idequipe` + ) +SELECT DISTINCT + idJ, + nom, + prénom, + pseudo, + YEAR (date_naiss), + email, + id_équipe +FROM + donnees_fournies.joueur; + +INSERT INTO + `joueur` ( `idjoueur`, `nom`, `prenom`, @@ -29,32 +73,212 @@ INSERT INTO `annee_nais`, `email` ) -SELECT - DISTINCT id_joueur, +SELECT DISTINCT + id_joueur, nom, prénom, pseudo, - YEAR(date_naiss), + YEAR (date_naiss), email +FROM + donnees_fournies.instances1 +WHERE + id_joueur > 10; + +INSERT INTO + `phase` (`idtournoi`, `niveau`, `date_p`) +SELECT + `idT`, + `niveau`, + `dateP` +FROM + donnees_fournies.phase; + +INSERT INTO + `classement_equipe` (`idclassement`, `idequipe`, `rang`) +SELECT + `idC`, + `idE`, + `rang` +FROM + donnees_fournies.classement_equipe; + +INSERT INTO + `partie` ( + `idpartie`, + `date_partie`, + `horaire`, + `duree`, + `etat`, + `idplateau`, + `idtournoi`, + `niveau` + ) +SELECT DISTINCT + id_partie, + dateP, + heureP, + ROUND(durée_secondes / 60), + CASE état + WHEN 'T' THEN 'terminée' + WHEN 'AV' THEN 'a venir' + WHEN 'EC' THEN 'en cours' + END, + NULL, + NULL, + NULL FROM donnees_fournies.instances1; INSERT INTO - `contrainte`(`idcontrainte`, `couleur`) + `participe` ( + `idtournoi`, + `niveau`, + `idjoueur`, + `a_joue`, + `est_qualifie` + ) SELECT - DISTINCT id_contrainte, - couleur + `idT`, + `niveau`, + `idJ`, + `a_joué`, + `est_qualifié` +FROM + donnees_fournies.participe; + +INSERT INTO + `est_en_lien` (`idclassement_1`, `idclassement_2`, `rang`) +SELECT + `idC1`, + `idC2`, + `type_lien` +FROM + donnees_fournies.est_en_lien; + +INSERT INTO + `tour` (`idpartie`, `num_tour`) +SELECT DISTINCT + `id_partie`, + `numTour` +FROM + donnees_fournies.instances3; + +INSERT INTO + `choisit_main` ( + `idjoueur`, + `idpartie`, + `num_tour`, + `nb_de_rouge`, + `nb_de_jaune`, + `nb_de_bleu` + ) +SELECT DISTINCT + `id_joueur`, + `id_partie`, + `numTour`, + `main_nb_rouge`, + `main_nb_jaune`, + `main_nb_bleu` +FROM + donnees_fournies.instances3; + +INSERT INTO + `classement_individuel` (`idclassement`, `idjoueur`, `rang`) +SELECT + `idC`, + `idJ`, + `rang` +FROM + donnees_fournies.classement_individuel; + +INSERT INTO + `est_contrainte` (`idcarte`, `idcontrainte`) +SELECT + `id_carte`, + `id_contrainte` FROM donnees_fournies.instances2; --- INSERT INTO --- `face_de_de`(`idcontrainte`, `valeur`) --- SELECT --- id_contrainte, --- valeur --- FROM --- donnees_fournies.instances2 --- WHERE --- nom = 'face_de_dé' --- YA UN GROS PROBLEME DANS LA BASE, QUAND YA PLUSIEURS DES DIFFERENTS L'ID CONTRAINTE QUI NE PEUX ETRE MULTIPLE A CAUSE DU PRIMARY KEY NE PERMET --- PAS DE MODELISER LES CARTES AVEC PLUSIEURS DES DE DIFFERENTES COULEURS (CAR ILS ONT PLUSIEURS CONTRAINTES) \ No newline at end of file +INSERT INTO + `face_de_de` (`idcontrainte`, `valeur`) +SELECT DISTINCT + `id_contrainte`, + `valeur` +FROM + donnees_fournies.instances2 +WHERE + nom = 'face_de_dé'; + +INSERT INTO + `serie_au_choix` (`idcontrainte`, `nombre`) +SELECT DISTINCT + `id_contrainte`, + `valeur` +FROM + donnees_fournies.instances2 +WHERE + nom = 'suite_au_choix'; + +INSERT INTO + `meme_au_choix` (`idcontrainte`, `nombre`, `couleur`) +SELECT DISTINCT + `id_contrainte`, + `valeur`, + `couleur` +FROM + donnees_fournies.instances2 +WHERE + nom = 'meme_au_choix'; + +INSERT INTO + `seuil_de_des` (`idcontrainte`, `valeur`, `sens`) +SELECT DISTINCT + `id_contrainte`, + `valeur`, + `sens` +FROM + donnees_fournies.instances2 +WHERE + nom = 'seuil_de_dé'; + +INSERT INTO + `tente_validation` ( + `idpartie`, + `num_tour`, + `idjoueur`, + `idcarte`, + `nb_tentatives` + ) +SELECT + `id_partie`, + `numTour`, + `id_joueur`, + `carteAvalider`, + COUNT(`numL`) as nb_tentatives +FROM + donnees_fournies.instances3 +GROUP BY + `id_partie`, + `id_joueur`, + `carteAvalider`; + +SET @row_number = 0; + +INSERT INTO `comprend`(`idpartie`, `num_tour`, `idlancer`) SELECT `id_partie`, `num_tour`, @row_number:=@row_number+1 AS idlancers +FROM donnees_fournies.instances3 t; + +SET @row_number = 0; +INSERT INTO `effectue`(`idjoueur`, `idlancer`) + +SELECT inst3.id_joueur, @row_number:=@row_number+1 AS idlancer +FROM donnees_fournies.instances3 inst3; + +SET @idlancer = 0; +INSERT INTO `de_lance`(`idlancer`, `rang_couleur_valeur`) +SELECT @idlancer:=@idlancer+1 AS idlancer, CONCAT('1;', de1) AS rang_couleur_valeur FROM `donnees_fournies`.`instances3` +UNION ALL SELECT @idlancer:=@idlancer+1, CONCAT('2;', de2) FROM `donnees_fournies`.`instances3` +UNION ALL SELECT @idlancer:=@idlancer+1, CONCAT('3;', de3) FROM `donnees_fournies`.`instances3` +UNION ALL SELECT @idlancer:=@idlancer+1, CONCAT('4;', de4) FROM `donnees_fournies`.`instances3` +UNION ALL SELECT @idlancer:=@idlancer+1, CONCAT('5;', de5) FROM `donnees_fournies`.`instances3` +UNION ALL SELECT @idlancer:=@idlancer+1, CONCAT('6;', de6) FROM `donnees_fournies`.`instances3`; \ No newline at end of file