standardisé la création de tables
This commit is contained in:
parent
dc9b14f53a
commit
8bfc3ae46d
2 changed files with 107 additions and 55 deletions
13
insert.sql
13
insert.sql
|
@ -155,8 +155,7 @@ INSERT INTO Etablissement VALUES (
|
|||
|
||||
--Yasmine
|
||||
INSERT INTO Evenement VALUES (
|
||||
0001,INSERT INTO
|
||||
|
||||
0001,
|
||||
DATE '2022-07-07',
|
||||
DATE '2023-07-07'
|
||||
);
|
||||
|
@ -288,7 +287,7 @@ INSERT INTO Publication VALUES(
|
|||
'recherche scientifique sur la chimie organique',
|
||||
DATE '2022-07-07',
|
||||
'conference des sciences',
|
||||
112,
|
||||
'A*',
|
||||
220
|
||||
);
|
||||
|
||||
|
@ -298,7 +297,7 @@ INSERT INTO Publication VALUES(
|
|||
'Page rank',
|
||||
DATE '2022-07-07',
|
||||
'conference des sciences et technologies',
|
||||
112,
|
||||
'A',
|
||||
220
|
||||
);
|
||||
|
||||
|
@ -309,7 +308,7 @@ INSERT INTO Publication VALUES (
|
|||
'chaine de markov',
|
||||
DATE '2022-12-03',
|
||||
'Mathematiques appliqués',
|
||||
113,
|
||||
'B',
|
||||
500
|
||||
);
|
||||
|
||||
|
@ -318,7 +317,7 @@ INSERT INTO Publication VALUES (
|
|||
'Physique quantique',
|
||||
DATE '2017-12-03',
|
||||
'Physique',
|
||||
113,
|
||||
'A',
|
||||
1520
|
||||
);
|
||||
|
||||
|
@ -327,7 +326,7 @@ INSERT INTO Publication VALUES (
|
|||
'La nourriture en France',
|
||||
DATE '2022-12-03',
|
||||
'IEE',
|
||||
112,
|
||||
'A*',
|
||||
20
|
||||
);
|
||||
|
||||
|
|
149
tables.sql
149
tables.sql
|
@ -27,12 +27,14 @@ CREATE TYPE T_ECHELON AS ENUM (
|
|||
-- Axel
|
||||
CREATE TABLE Personnel
|
||||
(
|
||||
idPersonnel SERIAL CONSTRAINT UnePersonne PRIMARY KEY,
|
||||
idPersonnel SERIAL NOT NULL,
|
||||
nom VARCHAR,
|
||||
prenom VARCHAR,
|
||||
date_de_naissance DATE,
|
||||
adress VARCHAR,
|
||||
date_de_recrutement DATE
|
||||
date_de_recrutement DATE,
|
||||
CONSTRAINT pk_Personnel
|
||||
PRIMARY KEY (idPersonnel)
|
||||
);
|
||||
|
||||
--Axel
|
||||
|
@ -40,25 +42,37 @@ CREATE TABLE Doctorant(
|
|||
idDoctorant INT NOT NULL,
|
||||
date_debut_these DATE,
|
||||
date_soutenance DATE,
|
||||
FOREIGN KEY (idDoctorant) REFERENCES Personnel(idPersonnel) ON DELETE CASCADE,
|
||||
PRIMARY KEY(idDoctorant)
|
||||
CONSTRAINT fk_doctorant
|
||||
FOREIGN KEY (idDoctorant)
|
||||
REFERENCES Personnel(idPersonnel)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_doctorant
|
||||
PRIMARY KEY(idDoctorant)
|
||||
);
|
||||
|
||||
--Yasmine
|
||||
CREATE TABLE Scientifique(
|
||||
idScientifique INT NOT NULL,
|
||||
grade T_GRADE,
|
||||
FOREIGN KEY (idScientifique) REFERENCES Personnel(idPersonnel) ON DELETE CASCADE,
|
||||
PRIMARY KEY (idScientifique)
|
||||
CONSTRAINT fk_scientifique
|
||||
FOREIGN KEY (idScientifique)
|
||||
REFERENCES Personnel(idPersonnel)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_scientifique
|
||||
PRIMARY KEY(idScientifique)
|
||||
);
|
||||
|
||||
|
||||
--Axel
|
||||
CREATE TABLE Etablissement(
|
||||
idEtablissement INT NOT NULL CONSTRAINT UnEtablissement PRIMARY Key,
|
||||
idEtablissement SERIAL NOT NULL,
|
||||
nom VARCHAR,
|
||||
acronyme VARCHAR,
|
||||
adresse VARCHAR
|
||||
adresse VARCHAR,
|
||||
CONSTRAINT pk_etablissement
|
||||
PRIMARY KEY (idEtablissement)
|
||||
);
|
||||
|
||||
--Axel
|
||||
|
@ -66,31 +80,42 @@ CREATE TABLE Enseignant_Chercheur(
|
|||
idEnseignant INT NOT NULL,
|
||||
idEtablissement INT NOT NULL,
|
||||
echelon T_ECHELON,
|
||||
FOREIGN KEY (idEtablissement) REFERENCES Etablissement(idEtablissement) ON DELETE CASCADE,
|
||||
FOREIGN KEY (idEnseignant) REFERENCES Personnel(idPersonnel) ON DELETE CASCADE,
|
||||
PRIMARY KEY (idEnseignant)
|
||||
CONSTRAINT fk_etablissement
|
||||
FOREIGN KEY (idEtablissement)
|
||||
REFERENCES Etablissement(idEtablissement)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT fk_enseignant
|
||||
FOREIGN KEY (idEnseignant)
|
||||
REFERENCES Personnel(idPersonnel)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_enseignant
|
||||
PRIMARY KEY (idEnseignant)
|
||||
);
|
||||
|
||||
|
||||
-- Nathan
|
||||
CREATE TABLE Evenement(
|
||||
idEvenement INT NOT NULL,
|
||||
idEvenement SERIAL NOT NULL,
|
||||
dateDebut DATE,
|
||||
dateFin DATE,
|
||||
PRIMARY KEY (idEvenement)
|
||||
CONSTRAINT pk_evenement
|
||||
PRIMARY KEY (idEvenement)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
CREATE TABLE Congres(
|
||||
idCongres INT NOT NULL,
|
||||
nb_inscriptions INT NOT NULL,
|
||||
classe VARCHAR(15),
|
||||
PRIMARY KEY (idCongres),
|
||||
classe T_CLASSECONF,
|
||||
CONSTRAINT fk_congres
|
||||
FOREIGN KEY (idCongres)
|
||||
REFERENCES Evenement(idEvenement)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_congres
|
||||
PRIMARY KEY (idCongres)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
|
@ -98,45 +123,53 @@ CREATE TABLE Labo_externe(
|
|||
idLabo SERIAL NOT NULL,
|
||||
nom VARCHAR(255),
|
||||
pays VARCHAR(255),
|
||||
PRIMARY KEY (idLabo)
|
||||
CONSTRAINT pk_laboo
|
||||
PRIMARY KEY (idLabo)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
CREATE TABLE Journee_Portes_Ouvertes(
|
||||
idPorteOuverte INT NOT NULL,
|
||||
PRIMARY KEY (idPorteOuverte),
|
||||
CONSTRAINT fk_jpo
|
||||
CONSTRAINT fk_porteOuverte
|
||||
FOREIGN KEY (idPorteOuverte)
|
||||
REFERENCES Evenement(idEvenement)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_porteOuverte
|
||||
PRIMARY KEY (idPorteOuverte)
|
||||
);
|
||||
|
||||
-- Nathan
|
||||
CREATE TABLE Auteur_Externe (
|
||||
idAuteur INT NOT NULL,
|
||||
idAuteur SERIAL NOT NULL,
|
||||
nom VARCHAR,
|
||||
prenom VARCHAR,
|
||||
adresseMail VARCHAR,
|
||||
idLabo INT NOT NULL,
|
||||
FOREIGN KEY (idLabo) REFERENCES Labo_Externe(idLabo) ON DELETE CASCADE,
|
||||
PRIMARY KEY (idAuteur)
|
||||
CONSTRAINT fk_labo
|
||||
FOREIGN KEY (idLabo)
|
||||
REFERENCES Labo_Externe(idLabo)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_auteur
|
||||
PRIMARY KEY (idAuteur)
|
||||
);
|
||||
|
||||
-- Nathan
|
||||
CREATE TABLE Publication(
|
||||
idPublication INT NOT NULL,
|
||||
idPublication SERIAL NOT NULL,
|
||||
titre VARCHAR,
|
||||
annee DATE,
|
||||
nomConf VARCHAR,
|
||||
classeConf T_CLASSECONF,
|
||||
nbPages INT,
|
||||
PRIMARY KEY (idPublication)
|
||||
CONSTRAINT pk_publication
|
||||
PRIMARY KEY (idPublication)
|
||||
);
|
||||
|
||||
--Yasmine
|
||||
CREATE TABLE Projet (
|
||||
idProjet INT NOT NULL,
|
||||
idProjet SERIAL NOT NULL,
|
||||
titre VARCHAR,
|
||||
acronyme VARCHAR,
|
||||
annee_debut DATE,
|
||||
|
@ -145,15 +178,19 @@ CREATE TABLE Projet (
|
|||
budget_Laas INT NOT NULL,
|
||||
cout INT NOT NULL,
|
||||
idMeneurProjet INT NOT NULL,
|
||||
FOREIGN KEY (idMeneurProjet) REFERENCES Scientifique(idScientifique) ON DELETE CASCADE,
|
||||
PRIMARY KEY(idProjet)
|
||||
CONSTRAINT fk_idMeneurProjet
|
||||
FOREIGN KEY (idMeneurProjet)
|
||||
REFERENCES Scientifique(idScientifique)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_projet
|
||||
PRIMARY KEY(idProjet)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
CREATE TABLE Participe(
|
||||
idProjet INT NOT NULL,
|
||||
idScientifique INT NOT NULL,
|
||||
PRIMARY KEY (idProjet, idScientifique),
|
||||
CONSTRAINT fk_Projet
|
||||
FOREIGN KEY (idProjet)
|
||||
REFERENCES Projet(idProjet)
|
||||
|
@ -163,14 +200,15 @@ CREATE TABLE Participe(
|
|||
FOREIGN KEY (idScientifique)
|
||||
REFERENCES Scientifique(idScientifique)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_participe
|
||||
PRIMARY KEY (idProjet, idScientifique)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
CREATE TABLE Preside(
|
||||
idCongres INT NOT NULL,
|
||||
idScientifique INT NOT NULL,
|
||||
PRIMARY KEY (idCongres, idScientifique),
|
||||
CONSTRAINT fk_Congres
|
||||
FOREIGN KEY (idCongres)
|
||||
REFERENCES Congres(idCongres)
|
||||
|
@ -178,17 +216,17 @@ CREATE TABLE Preside(
|
|||
ON UPDATE CASCADE,
|
||||
CONSTRAINT fk_Scientifique
|
||||
FOREIGN KEY (idScientifique)
|
||||
REFERENCES Scientifique(idScientifique)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
REFERENCES Scientifique(idScientifique)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_preside
|
||||
PRIMARY KEY (idCongres, idScientifique)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
CREATE TABLE Publie_Scientifique(
|
||||
idPublication INT NOT NULL,
|
||||
idScientifique INT NOT NULL,
|
||||
PRIMARY KEY (idPublication, idScientifique),
|
||||
|
||||
CONSTRAINT fk_Publication
|
||||
FOREIGN KEY (idPublication)
|
||||
REFERENCES Publication(idPublication)
|
||||
|
@ -198,14 +236,15 @@ CREATE TABLE Publie_Scientifique(
|
|||
FOREIGN KEY (idScientifique)
|
||||
REFERENCES Scientifique(idScientifique)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_publieScientifique
|
||||
PRIMARY KEY (idPublication, idScientifique)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
CREATE TABLE Publie_Doctorant(
|
||||
idPublication INT NOT NULL,
|
||||
idDoctorant INT NOT NULL,
|
||||
PRIMARY KEY (idPublication, idDoctorant),
|
||||
CONSTRAINT fk_Publication
|
||||
FOREIGN KEY (idPublication)
|
||||
REFERENCES Publication(idPublication)
|
||||
|
@ -215,14 +254,15 @@ CREATE TABLE Publie_Doctorant(
|
|||
FOREIGN KEY (idDoctorant)
|
||||
REFERENCES Doctorant(idDoctorant)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_publieDoctorant
|
||||
PRIMARY KEY (idPublication, idDoctorant)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
CREATE TABLE Publie_Externe(
|
||||
idPublication INT NOT NULL,
|
||||
idAuteurExterne INT NOT NULL,
|
||||
PRIMARY KEY (idPublication, idAuteurExterne),
|
||||
CONSTRAINT fk_Publication
|
||||
FOREIGN KEY (idPublication)
|
||||
REFERENCES Publication(idPublication)
|
||||
|
@ -232,22 +272,24 @@ CREATE TABLE Publie_Externe(
|
|||
FOREIGN KEY (idAuteurExterne)
|
||||
REFERENCES Auteur_Externe(idAuteur)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_publieExterne
|
||||
PRIMARY KEY (idPublication, idAuteurExterne),
|
||||
);
|
||||
|
||||
--Yasmine
|
||||
CREATE TABLE Partenaire(
|
||||
idPartenaire INT NOT NULL,
|
||||
idPartenaire SERIAL NOT NULL,
|
||||
nom VARCHAR,
|
||||
pays VARCHAR,
|
||||
PRIMARY KEY(idPartenaire)
|
||||
CONSTRAINT pk_partenaire
|
||||
PRIMARY KEY(idPartenaire)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
CREATE TABLE Participe_Externe(
|
||||
idProjet INT NOT NULL,
|
||||
idPartenaire INT NOT NULL,
|
||||
PRIMARY KEY (idProjet, idPartenaire),
|
||||
CONSTRAINT fk_Projet
|
||||
FOREIGN KEY (idProjet)
|
||||
REFERENCES Projet(idProjet)
|
||||
|
@ -257,7 +299,9 @@ CREATE TABLE Participe_Externe(
|
|||
FOREIGN KEY (idPartenaire)
|
||||
REFERENCES Partenaire(idPartenaire)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_participeExterne
|
||||
PRIMARY KEY (idProjet, idPartenaire)
|
||||
);
|
||||
|
||||
-- Ronan
|
||||
|
@ -281,8 +325,17 @@ CREATE TABLE Organise (
|
|||
CREATE TABLE Encadrement (
|
||||
idDoctorant INT NOT NULL,
|
||||
idScientifique INT NOT NULL,
|
||||
FOREIGN KEY (idDoctorant) REFERENCES Doctorant(idDoctorant) ON DELETE CASCADE,
|
||||
FOREIGN KEY (idScientifique) REFERENCES Scientifique(idScientifique) ON DELETE CASCADE,
|
||||
PRIMARY KEY(idScientifique,idDoctorant)
|
||||
CONSTRAINT fk_doctorant
|
||||
FOREIGN KEY (idDoctorant)
|
||||
REFERENCES Doctorant(idDoctorant)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT fk_scientifique
|
||||
FOREIGN KEY (idScientifique)
|
||||
REFERENCES Scientifique(idScientifique)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT pk_encadrement
|
||||
PRIMARY KEY(idScientifique,idDoctorant)
|
||||
);
|
||||
|
||||
|
|
Loading…
Reference in a new issue