Add SQL scripts for dataset migration 23/31 75%

This commit is contained in:
Morph01
2024-04-05 01:51:37 +02:00
parent f5e3bd69b4
commit f787694761
3 changed files with 555 additions and 276 deletions

BIN
FAIT.pdf Normal file

Binary file not shown.

View File

@@ -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);
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);

View File

@@ -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)
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`;