-- ALTER USER 'root'@'localhost' IDENTIFIED BY 'p'; -- CREATE DATABASE scripted; -- USE scripted; -- DROP TABLE Contenir; -- DROP TABLE Participer; -- DROP TABLE Resoudre; -- DROP TABLE Enigme; -- DROP TABLE Partie; -- DROP TABLE Utilisateur; CREATE TABLE Utilisateur( email varchar(50) PRIMARY KEY, pseudo varchar(50), mdp varchar(50), estAdmin boolean ); CREATE TABLE Enigme( id int PRIMARY KEY AUTO_INCREMENT, enonce varchar(250) NOT NULL, aide varchar(250), rappel varchar(250), solution varchar(250) NOT NULL, test varchar(250) NOT NULL, tempsDeResolution numeric CHECK (tempsDeResolution >0), points numeric CHECK (points >0) ); CREATE TABLE Partie( id int PRIMARY KEY AUTO_INCREMENT, dateDebut date NOT NULL ); CREATE TABLE Resoudre( joueur varchar(50) REFERENCES Utilisateur(email), enigme int REFERENCES Enigme(id), partie int REFERENCES Partie(id), classement int CHECK (classement >0), indexEnigme int CHECK (indexEnigme >0), temps numeric CHECK (temps >0), enMulti boolean, PRIMARY KEY(joueur, enigme, partie) ); CREATE TABLE Contenir( partie int REFERENCES Partie(id), enigme int REFERENCES Enigme(id), indexEnigme numeric UNIQUE, PRIMARY KEY(partie, enigme) ); CREATE TABLE Participer( partie int REFERENCES Partie(id), joueur varchar(50) REFERENCES Joueur(email), enCours boolean, PRIMARY KEY(partie, joueur) );