This repository has been archived on 2021-09-15. You can view files and clone it, but cannot push or open issues or pull requests.
ModuleWeb/SRC/init/table.sql

167 lines
4.1 KiB
MySQL
Raw Normal View History

2015-02-15 04:35:26 +00:00
DROP TABLE IF EXISTS password_resets;
2015-02-12 18:19:25 +00:00
DROP TABLE IF EXISTS description;
2015-02-14 22:21:24 +00:00
DROP TABLE IF EXISTS assolisteaoeuvre;
DROP TABLE IF EXISTS assolisteajeu;
2015-02-12 14:08:31 +00:00
DROP TABLE IF EXISTS listeoeuvre;
2015-02-14 22:21:24 +00:00
DROP TABLE IF EXISTS assodesignationaoeuvre;
DROP TABLE IF EXISTS assoauteuraoeuvre;
DROP TABLE IF EXISTS assodatationaoeuvre;
2015-02-12 14:08:31 +00:00
DROP TABLE IF EXISTS oeuvre;
DROP TABLE IF EXISTS auteur;
DROP TABLE IF EXISTS designation;
DROP TABLE IF EXISTS technique;
DROP TABLE IF EXISTS domaine;
DROP TABLE IF EXISTS matiere;
DROP TABLE IF EXISTS datation;
2015-02-15 04:25:36 +00:00
DROP TABLE IF EXISTS users;
2015-02-12 14:08:31 +00:00
DROP TABLE IF EXISTS niveau;
DROP TABLE IF EXISTS jeu;
2015-02-12 18:19:25 +00:00
2015-02-12 14:08:31 +00:00
CREATE TABLE jeu (
idjeu INT NOT NULL AUTO_INCREMENT,
nom VARCHAR(50),
description VARCHAR(255),
PRIMARY KEY (idjeu)
);
CREATE TABLE niveau (
idniveau INT NOT NULL AUTO_INCREMENT,
idjeu INT NOT NULL,
difficulte INT,
caractéristique VARCHAR(255),
PRIMARY KEY (idniveau),
FOREIGN KEY (idjeu) REFERENCES jeu(idjeu)
);
2015-02-15 04:25:36 +00:00
CREATE TABLE users (
2015-02-15 04:53:59 +00:00
id INT NOT NULL AUTO_INCREMENT,
2015-02-17 19:21:30 +00:00
firstname VARCHAR(50),
2015-02-17 21:19:47 +00:00
lastname VARCHAR(50),
city VARCHAR(50),
2015-02-15 04:25:36 +00:00
password VARCHAR(255),
2015-02-12 14:08:31 +00:00
email VARCHAR(50),
image VARCHAR(255),
2015-02-15 05:05:45 +00:00
remember_token VARCHAR(100),
droits INT DEFAULT 0,
2015-02-15 04:53:59 +00:00
PRIMARY KEY (id)
2015-02-12 14:08:31 +00:00
);
CREATE TABLE designation (
2015-02-17 21:19:47 +00:00
iddesignation INT NOT NULL AUTO_INCREMENT,
2015-02-14 22:21:24 +00:00
nom VARCHAR(255) NOT NULL,
2015-02-12 14:08:31 +00:00
urldesignation VARCHAR(255),
2015-02-17 21:19:47 +00:00
PRIMARY KEY (iddesignation)
2015-02-12 14:08:31 +00:00
);
CREATE TABLE auteur (
2015-02-17 21:19:47 +00:00
idauteur INT NOT NULL AUTO_INCREMENT,
2015-02-14 22:21:24 +00:00
nom VARCHAR(50) NOT NULL,
2015-02-12 14:08:31 +00:00
anecdote VARCHAR(255),
2015-02-17 21:19:47 +00:00
PRIMARY KEY (idauteur)
2015-02-12 14:08:31 +00:00
);
CREATE TABLE technique (
2015-02-17 21:19:47 +00:00
idtechnique INT NOT NULL AUTO_INCREMENT,
2015-02-14 22:21:24 +00:00
nom VARCHAR(50) NOT NULL,
2015-02-12 14:08:31 +00:00
urltechnique VARCHAR(255),
2015-02-17 21:19:47 +00:00
PRIMARY KEY (idtechnique)
2015-02-12 14:08:31 +00:00
);
CREATE TABLE domaine (
2015-02-17 21:19:47 +00:00
iddomaine INT NOT NULL AUTO_INCREMENT,
2015-02-14 22:21:24 +00:00
nom VARCHAR(50) NOT NULL,
2015-02-17 21:19:47 +00:00
PRIMARY KEY (iddomaine)
2015-02-12 14:08:31 +00:00
);
CREATE TABLE matiere (
2015-02-17 21:19:47 +00:00
idmatiere INT NOT NULL AUTO_INCREMENT,
2015-02-14 22:21:24 +00:00
nom VARCHAR(50) NOT NULL,
2015-02-17 21:19:47 +00:00
PRIMARY KEY (idmatiere)
2015-02-12 14:08:31 +00:00
);
CREATE TABLE datation (
2015-02-14 22:21:24 +00:00
iddate INT NOT NULL AUTO_INCREMENT,
debut DATE,
fin DATE,
PRIMARY KEY (iddate)
2015-02-12 14:08:31 +00:00
);
CREATE TABLE oeuvre (
idoeuvre INT NOT NULL AUTO_INCREMENT,
2015-02-17 21:19:47 +00:00
iddate INT,
idtechnique INT,
iddomaine INT,
idmatiere INT,
urlPhoto VARCHAR(50),
2015-02-12 14:08:31 +00:00
PRIMARY KEY (idoeuvre),
2015-02-17 21:19:47 +00:00
FOREIGN KEY (idtechnique) REFERENCES technique(idtechnique),
FOREIGN KEY (iddomaine) REFERENCES domaine(iddomaine),
FOREIGN KEY (idmatiere) REFERENCES matiere(idmatiere),
2015-02-14 22:21:24 +00:00
FOREIGN KEY (iddate) REFERENCES datation(iddate)
2015-02-12 14:08:31 +00:00
);
2015-02-14 22:21:24 +00:00
CREATE TABLE assodesignationaoeuvre (
2015-02-18 22:15:18 +00:00
oeuvre_id INT NOT NULL,
designation_id INT NOT NULL,
PRIMARY KEY (designation_id,oeuvre_id),
FOREIGN KEY (designation_id) REFERENCES designation(iddesignation),
FOREIGN KEY (oeuvre_id) REFERENCES oeuvre(idoeuvre)
2015-02-14 22:21:24 +00:00
);
CREATE TABLE assoauteuraoeuvre (
2015-02-18 22:15:18 +00:00
oeuvre_id INT NOT NULL,
auteur_id INT NOT NULL,
PRIMARY KEY (auteur_id,oeuvre_id),
FOREIGN KEY (auteur_id) REFERENCES auteur(idauteur),
FOREIGN KEY (oeuvre_id) REFERENCES oeuvre(idoeuvre)
2015-02-14 22:21:24 +00:00
);
2015-02-12 14:08:31 +00:00
CREATE TABLE listeoeuvre (
idlisteoeuvre INT NOT NULL AUTO_INCREMENT,
2015-02-15 04:30:29 +00:00
idusers INT NOT NULL,
2015-02-12 14:08:31 +00:00
nom VARCHAR(50),
etat INT(1) DEFAULT 0,
dateCreation TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (idlisteoeuvre),
2015-02-15 04:53:59 +00:00
FOREIGN KEY (idusers) REFERENCES users(id)
2015-02-12 14:08:31 +00:00
);
2015-02-14 22:21:24 +00:00
CREATE TABLE assolisteaoeuvre (
2015-02-18 22:15:18 +00:00
liste_oeuvre_id INT NOT NULL,
oeuvre_id INT NOT NULL,
PRIMARY KEY (liste_oeuvre_id,oeuvre_id),
FOREIGN KEY (liste_oeuvre_id) REFERENCES listeoeuvre(idlisteoeuvre),
FOREIGN KEY (oeuvre_id) REFERENCES oeuvre(idoeuvre)
2015-02-12 14:08:31 +00:00
);
2015-02-14 22:21:24 +00:00
CREATE TABLE assolisteajeu (
2015-02-18 22:15:18 +00:00
liste_oeuvre_id INT NOT NULL,
jeu_id INT NOT NULL,
PRIMARY KEY (liste_oeuvre_id,jeu_id),
FOREIGN KEY (liste_oeuvre_id) REFERENCES listeoeuvre(idlisteoeuvre),
FOREIGN KEY (jeu_id) REFERENCES jeu(idjeu)
2015-02-12 14:08:31 +00:00
);
CREATE TABLE description (
iddescription INT NOT NULL AUTO_INCREMENT,
idoeuvre INT NOT NULL,
idlisteoeuvre INT NOT NULL,
libelle VARCHAR(255),
PRIMARY KEY (iddescription),
FOREIGN KEY (idoeuvre) REFERENCES oeuvre(idoeuvre),
FOREIGN KEY (idlisteoeuvre) REFERENCES listeoeuvre(idlisteoeuvre)
);
2015-02-15 04:35:26 +00:00
CREATE TABLE password_resets (
2015-02-15 04:39:20 +00:00
token VARCHAR(255),
email VARCHAR(255),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (token)
);