From 4b41a937e25be688a08f84c7e608d83fee67bedf Mon Sep 17 00:00:00 2001 From: vbochet <vbochet@gmail.com> Date: Sun, 8 May 2016 23:19:58 +0200 Subject: [PATCH] =?UTF-8?q?Mise=20=C3=A0=20jour=20du=20fichier=20de=20g?= =?UTF-8?q?=C3=A9n=C3=A9ration=20de=20base=20de=20donn=C3=A9es=20pour=20co?= =?UTF-8?q?rrespondre=20aux=20attentes=20de=20PostgreSQL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- generate_base.sql | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/generate_base.sql b/generate_base.sql index 9229794..e91ec89 100644 --- a/generate_base.sql +++ b/generate_base.sql @@ -1,15 +1,20 @@ +-- Pour générer la base de données PostgreSQL pour le projet Classements Ludiques +CREATE TYPE type_jeu AS ENUM ('duels', 'equipes'); +CREATE TYPE type_scores_jeu AS ENUM ('classement', 'scores'); + + DROP TABLE IF EXISTS R_jeu; CREATE TABLE R_jeu ( nom VARCHAR(255) NOT NULL, description TEXT NOT NULL, slug VARCHAR(255) PRIMARY KEY, - est_valide TINYINT(1) NOT NULL, - max_joueurs INT(11), - min_joueurs INT(11), - min_equipes INT(11), - max_equipes INT(11), - type ENUM ('duels', 'equipes') NOT NULL, - type_scores ENUM ('classement', 'scores') NOT NULL + est_valide BOOLEAN NOT NULL, + max_joueurs INT, + min_joueurs INT, + min_equipes INT, + max_equipes INT, + type type_jeu NOT NULL, + type_scores type_scores_jeu NOT NULL ); DROP TABLE IF EXISTS R_joueur; @@ -32,18 +37,18 @@ CREATE TABLE R_admin ( DROP TABLE IF EXISTS R_partie; CREATE TABLE R_partie ( - id INT(11) PRIMARY KEY AUTO_INCREMENT, + id SERIAL PRIMARY KEY, jeu VARCHAR(255) REFERENCES R_jeu(slug), date TIMESTAMP NOT NULL ); DROP TABLE IF EXISTS R_joueur_partie; CREATE TABLE R_joueur_partie ( - partie INT(11) REFERENCES R_partie(id), + partie INT REFERENCES R_partie(id), joueur VARCHAR(255) REFERENCES R_joueur(slug), - classement INT(11) NOT NULL, - score INT(11) NOT NULL, - score_partie INT(11), + classement INT NOT NULL, + score INT NOT NULL, + score_partie INT, PRIMARY KEY (joueur, partie) ); @@ -51,9 +56,9 @@ DROP TABLE IF EXISTS R_joueur_jeu; CREATE TABLE R_joueur_jeu ( joueur varchar(255) REFERENCES R_joueur(slug), jeu VARCHAR(255) REFERENCES R_jeu(slug), - score INT(11), - classement INT(11), - est_jeu_favoris tinyint(1), + score INT, + classement INT, + est_jeu_favoris BOOLEAN, PRIMARY KEY (joueur, jeu) ); -- GitLab