From f5e3bd69b4ceb4ec65de81d8ccead3d417df123b Mon Sep 17 00:00:00 2001 From: Simon Pribylski Date: Thu, 4 Apr 2024 16:41:47 +0200 Subject: [PATCH] add caca script --- sql/script_creation_caca.sql | 287 +++++++++++++++++++++++++++++++++++ 1 file changed, 287 insertions(+) create mode 100644 sql/script_creation_caca.sql diff --git a/sql/script_creation_caca.sql b/sql/script_creation_caca.sql new file mode 100644 index 0000000..b8f12ce --- /dev/null +++ b/sql/script_creation_caca.sql @@ -0,0 +1,287 @@ +-- Generated by Mocodo 4.2.4 + +CREATE TABLE carte ( + PRIMARY KEY (idcarte), + idcarte VARCHAR(42) NOT NULL, + niveau VARCHAR(42), + img VARCHAR(42), + points VARCHAR(42) +); + +CREATE TABLE choisit_main ( + PRIMARY KEY (idjoueur, idpartie, num_tour), + idjoueur VARCHAR(42) NOT NULL, + idpartie VARCHAR(42) NOT NULL, + num_tour VARCHAR(42) NOT NULL, + nb_de_rouge VARCHAR(42), + nb_de_jaune VARCHAR(42), + nb_de_bleu VARCHAR(42) +); + +CREATE TABLE classement ( + PRIMARY KEY (idclassement), + idclassement VARCHAR(42) NOT NULL, + nom VARCHAR(42), + portee VARCHAR(42) +); + +CREATE TABLE classement_equipe ( + PRIMARY KEY (idclassement), + idclassement VARCHAR(42) NOT NULL +); + +CREATE TABLE classement_individuel ( + PRIMARY KEY (idclassement), + idclassement VARCHAR(42) NOT NULL +); + +CREATE TABLE comprend ( + PRIMARY KEY (idpartie, num_tour, idlancer), + idpartie VARCHAR(42) NOT NULL, + num_tour VARCHAR(42) NOT NULL, + idlancer VARCHAR(42) NOT NULL +); + +CREATE TABLE contrainte ( + PRIMARY KEY (idcontrainte), + idcontrainte VARCHAR(42) NOT NULL, + couleur VARCHAR(42) +); + +CREATE TABLE de_lance ( + PRIMARY KEY (idlancer, rang_couleur_valeur), + idlancer VARCHAR(42) NOT NULL, + rang_couleur_valeur VARCHAR(42) NOT NULL +); + +CREATE TABLE effectue ( + PRIMARY KEY (idjoueur, idlancer), + idjoueur VARCHAR(42) NOT NULL, + idlancer VARCHAR(42) NOT NULL +); + +CREATE TABLE equipe ( + PRIMARY KEY (idequipe), + idequipe VARCHAR(42) NOT NULL, + nom VARCHAR(42) +); + +CREATE TABLE est_classe ( + PRIMARY KEY (idjoueur, idclassement), + idjoueur VARCHAR(42) NOT NULL, + idclassement VARCHAR(42) NOT NULL, + rang VARCHAR(42) +); + +CREATE TABLE est_compose ( + PRIMARY KEY (idcarte, idplateau), + idcarte VARCHAR(42) NOT NULL, + idplateau VARCHAR(42) NOT NULL, + rang VARCHAR(42) +); + +CREATE TABLE est_contrainte ( + PRIMARY KEY (idcarte, idcontrainte), + idcarte VARCHAR(42) NOT NULL, + idcontrainte VARCHAR(42) NOT NULL +); + +CREATE TABLE est_en_lien ( + PRIMARY KEY (idclassement_1, idclassement_2), + idclassement_1 VARCHAR(42) NOT NULL, + idclassement_2 VARCHAR(42) NOT NULL, + rang VARCHAR(42) +); + +CREATE TABLE est_en_position ( + PRIMARY KEY (idjoueur, idcarte, idpartie, num_tour), + idjoueur VARCHAR(42) NOT NULL, + idcarte VARCHAR(42) NOT NULL, + idpartie VARCHAR(42) NOT NULL, + num_tour VARCHAR(42) NOT NULL, + position VARCHAR(42) +); + +CREATE TABLE est_lie_a ( + PRIMARY KEY (idclassement_composee, idclassement_composante), + idclassement_composee VARCHAR(42) NOT NULL, + idclassement_composante VARCHAR(42) NOT NULL, + quantite VARCHAR(42) +); + +CREATE TABLE face_de_de ( + PRIMARY KEY (idcontrainte), + idcontrainte VARCHAR(42) NOT NULL, + valeur VARCHAR(42) +); + +CREATE TABLE joue ( + PRIMARY KEY (idjoueur, idpartie), + idjoueur VARCHAR(42) NOT NULL, + idpartie VARCHAR(42) NOT NULL, + couleur_pion VARCHAR(42), + rang VARCHAR(42) +); + +CREATE TABLE joueur ( + PRIMARY KEY (idjoueur), + idjoueur VARCHAR(42) NOT NULL, + nom VARCHAR(42), + prenom VARCHAR(42), + pseudo VARCHAR(42), + annee_nais VARCHAR(42), + email VARCHAR(42), + idequipe VARCHAR(42) NOT NULL +); + +CREATE TABLE meme_au_choix ( + PRIMARY KEY (idcontrainte), + idcontrainte VARCHAR(42) NOT NULL, + nombre VARCHAR(42), + couleur VARCHAR(42) +); + +CREATE TABLE participe ( + PRIMARY KEY (idtournoi, niveau, idjoueur), + idtournoi VARCHAR(42) NOT NULL, + niveau VARCHAR(42) NOT NULL, + idjoueur VARCHAR(42) NOT NULL, + a_joue VARCHAR(42), + est_qualifie VARCHAR(42) +); + +CREATE TABLE partie ( + PRIMARY KEY (idpartie), + idpartie VARCHAR(42) NOT NULL, + date_partie VARCHAR(42), + horaire VARCHAR(42), + duree VARCHAR(42), + etat VARCHAR(42), + idplateau VARCHAR(42) NOT NULL, + idtournoi VARCHAR(42) NOT NULL, + niveau VARCHAR(42) NOT NULL, + UNIQUE (idtournoi, niveau) +); + +CREATE TABLE phase ( + PRIMARY KEY (idtournoi, niveau), + idtournoi VARCHAR(42) NOT NULL, + niveau VARCHAR(42) NOT NULL, + date_p VARCHAR(42) +); + +CREATE TABLE plateau ( + PRIMARY KEY (idplateau), + idplateau VARCHAR(42) NOT NULL, + taille VARCHAR(42) +); + +CREATE TABLE serie_au_choix ( + PRIMARY KEY (idcontrainte), + idcontrainte VARCHAR(42) NOT NULL, + nombre VARCHAR(42) +); + +CREATE TABLE seuil_de_des ( + PRIMARY KEY (idcontrainte), + idcontrainte VARCHAR(42) NOT NULL, + valeur VARCHAR(42), + sens VARCHAR(42) +); + +CREATE TABLE sont_classes ( + PRIMARY KEY (idequipe, idclassement), + idequipe VARCHAR(42) NOT NULL, + idclassement VARCHAR(42) NOT NULL, + rang VARCHAR(42) +); + +CREATE TABLE tente_validation ( + PRIMARY KEY (idpartie, num_tour, idjoueur, idcarte), + idpartie VARCHAR(42) NOT NULL, + num_tour VARCHAR(42) NOT NULL, + idjoueur VARCHAR(42) NOT NULL, + idcarte VARCHAR(42) NOT NULL, + nb_tentatives VARCHAR(42) +); + +CREATE TABLE tour ( + PRIMARY KEY (idpartie, num_tour), + idpartie VARCHAR(42) NOT NULL, + num_tour VARCHAR(42) NOT NULL +); + +CREATE TABLE tournoi ( + PRIMARY KEY (idtournoi), + idtournoi VARCHAR(42) NOT NULL, + nom VARCHAR(42), + date_deb VARCHAR(42), + date_fin VARCHAR(42) +); + +CREATE TABLE valide ( + PRIMARY KEY (idcontrainte, idlancer), + idcontrainte VARCHAR(42) NOT NULL, + idlancer VARCHAR(42) NOT NULL +); + +ALTER TABLE choisit_main ADD FOREIGN KEY (idpartie, num_tour) REFERENCES tour (idpartie, num_tour); +ALTER TABLE choisit_main ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); + +ALTER TABLE classement_equipe ADD FOREIGN KEY (idclassement) REFERENCES classement (idclassement); + +ALTER TABLE classement_individuel ADD FOREIGN KEY (idclassement) REFERENCES classement (idclassement); + +ALTER TABLE comprend ADD FOREIGN KEY (idpartie, num_tour) REFERENCES tour (idpartie, num_tour); + +ALTER TABLE effectue ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); + +ALTER TABLE est_classe ADD FOREIGN KEY (idclassement) REFERENCES classement_individuel (idclassement); +ALTER TABLE est_classe ADD FOREIGN KEY (idjoueur) REFERENCES joueur (idjoueur); + +ALTER TABLE est_compose ADD FOREIGN KEY (idplateau) REFERENCES plateau (idplateau); +ALTER TABLE est_compose ADD FOREIGN KEY (idcarte) REFERENCES carte (idcarte); + +ALTER TABLE est_contrainte ADD FOREIGN KEY (idcontrainte) REFERENCES contrainte (idcontrainte); +ALTER TABLE est_contrainte ADD FOREIGN KEY (idcarte) REFERENCES carte (idcarte); + +ALTER TABLE est_en_lien ADD FOREIGN KEY (idclassement_2) REFERENCES classement (idclassement); +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