Feat: first implementation of postgres db for backend
All checks were successful
CI / build (push) Successful in 13s
All checks were successful
CI / build (push) Successful in 13s
This commit is contained in:
122
MyINPulse-back/src/main/resources/schema.sql
Normal file
122
MyINPulse-back/src/main/resources/schema.sql
Normal file
@ -0,0 +1,122 @@
|
||||
DROP TABLE IF EXISTS projets CASCADE;
|
||||
DROP TABLE IF EXISTS utilisateurs CASCADE;
|
||||
DROP TABLE IF EXISTS entrepreneurs CASCADE;
|
||||
DROP TABLE IF EXISTS administrateurs CASCADE;
|
||||
DROP TABLE IF EXISTS sections CASCADE;
|
||||
DROP TABLE IF EXISTS rendez_vous CASCADE;
|
||||
DROP TABLE IF EXISTS comptes_rendus CASCADE;
|
||||
DROP TABLE IF EXISTS concerner CASCADE;
|
||||
DROP TABLE IF EXISTS formes CASCADE;
|
||||
|
||||
CREATE TABLE projets
|
||||
(
|
||||
id_projet SERIAL NOT NULL,
|
||||
nom_projet VARCHAR(255) ,
|
||||
logo BYTEA ,
|
||||
date_creation DATE ,
|
||||
status_projet VARCHAR(255) ,
|
||||
CONSTRAINT pk_projet PRIMARY KEY (id_projet) );
|
||||
|
||||
|
||||
CREATE TABLE utilisateurs
|
||||
(
|
||||
id_utilisateur SERIAL NOT NULL,
|
||||
nom_utilisateur VARCHAR(255) ,
|
||||
prenom_utilisateur VARCHAR(255) ,
|
||||
mail_principal VARCHAR(255) ,
|
||||
mail_secondaire VARCHAR(255) ,
|
||||
numero_telephone VARCHAR(15) ,
|
||||
CONSTRAINT pk_utilisateur PRIMARY KEY (id_utilisateur) );
|
||||
|
||||
CREATE TABLE entrepreneurs
|
||||
(
|
||||
id_entrepreneur SERIAL REFERENCES utilisateurs (id_utilisateur),
|
||||
ecole VARCHAR(255) ,
|
||||
filiere VARCHAR(255) ,
|
||||
status_snee BOOLEAN ,
|
||||
CONSTRAINT pk_entrepreneur PRIMARY KEY (id_entrepreneur) );
|
||||
|
||||
CREATE TABLE administrateurs
|
||||
(
|
||||
id_administrateur SERIAL REFERENCES utilisateurs (id_utilisateur),
|
||||
CONSTRAINT pk_administrateur PRIMARY KEY (id_administrateur) );
|
||||
|
||||
CREATE TABLE sections
|
||||
(
|
||||
id_section SERIAL NOT NULL,
|
||||
titre VARCHAR(255) ,
|
||||
contenu_section TEXT ,
|
||||
date_modification TIMESTAMP ,
|
||||
CONSTRAINT pk_section PRIMARY KEY (id_section) );
|
||||
|
||||
CREATE TABLE rendez_vous
|
||||
(
|
||||
id_rdv SERIAL NOT NULL,
|
||||
date_rdv DATE ,
|
||||
heure_rdv TIME ,
|
||||
duree_rdv TIME ,
|
||||
lieu_rdv VARCHAR(255) ,
|
||||
sujet_rdv TEXT ,
|
||||
CONSTRAINT pk_rdv PRIMARY KEY (id_rdv) );
|
||||
|
||||
CREATE TABLE comptes_rendus
|
||||
(
|
||||
id_compte_rendu SERIAL NOT NULL,
|
||||
contenu_compte_rendu TEXT ,
|
||||
CONSTRAINT pk_compte_rendu PRIMARY KEY (id_compte_rendu) );
|
||||
|
||||
CREATE TABLE concerner
|
||||
(
|
||||
id_section SERIAL REFERENCES sections (id_section),
|
||||
id_rdv SERIAL REFERENCES sections (id_rdv),
|
||||
CONSTRAINT pk_concerner PRIMARY KEY (id_section, id_rdv) );
|
||||
|
||||
|
||||
ALTER TABLE projets
|
||||
ADD CONSTRAINT fk1_projet FOREIGN KEY (id_administrateur)
|
||||
REFERENCES administrateurs (id_administrateur)
|
||||
ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE projets
|
||||
ADD CONSTRAINT fk2_projet FOREIGN KEY (id_entrepreneur_participation)
|
||||
REFERENCES entrepreneurs (id_entrepreneur)
|
||||
ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE entrepreneurs
|
||||
ADD CONSTRAINT fk1_entrepreneur FOREIGN KEY (id_projet_propose)
|
||||
REFERENCES projets (id_projet)
|
||||
ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE sections
|
||||
ADD CONSTRAINT fk1_section FOREIGN KEY (id_projet)
|
||||
REFERENCES projets (id_projet)
|
||||
ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE sections
|
||||
ADD CONSTRAINT fk2_section FOREIGN KEY (id_administrateur)
|
||||
REFERENCES administrateurs (id_administrateur)
|
||||
ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE rendez-vous
|
||||
ADD CONSTRAINT fk1_rdv FOREIGN KEY (id_entrepreneur)
|
||||
REFERENCES entrepreneurs (id_entrepreneur)
|
||||
ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE rendez-vous
|
||||
ADD CONSTRAINT fk2_rdv FOREIGN KEY (id_administrateur)
|
||||
REFERENCES administrateurs (id_administrateur)
|
||||
ON DELETE CASCADE;
|
||||
|
||||
ALTER TABLE comptes-rendus
|
||||
ADD CONSTRAINT fk1_compte_rendu FOREIGN KEY (id_rdv)
|
||||
REFERENCES rendez_vous (id_rdv)
|
||||
ON DELETE CASCADE;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user