From 0205360ae68c2daa34ca18d465762cc8bca7adb8 Mon Sep 17 00:00:00 2001 From: qixiang peng <qixiang.peng@pc130-08.pedago.ensiie.fr> Date: Tue, 12 Apr 2016 11:46:44 +0200 Subject: [PATCH] added create.sql --- create.sql | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 create.sql diff --git a/create.sql b/create.sql new file mode 100644 index 0000000..da8bf20 --- /dev/null +++ b/create.sql @@ -0,0 +1,67 @@ +-- ################################################################### +-- # Application : SQL script +-- # File : create.sql +-- # Date : 04/2016 +-- # Function : Create the database +-- ################################################################### +DROP TABLE IF EXISTS compte_client; +DROP TABLE IF EXISTS salle; +DROP TABLE IF EXISTS piece; +DROP TABLE IF EXISTS representation; +DROP TABLE IF EXISTS place; +DROP TABLE IF EXISTS billet; + + +CREATE TABLE compte_client( + n_compte INTEGER, + nom VARCHAR(100) NOT NULL, + prenom VARCHAR(100) NOT NULL, + DoB DATE, + MdP VARCHAR(100) NOT NULL, + CONSTRAINT pk_compte PRIMARY KEY (n_compte) + ); + + CREATE TABLE salle( + n_salle INTEGER, + vip_places INTEGER, + min_places INTEGER, + moyen_places INTEGER, + CONSTRAINT pk_salle PRIMARY KEY (n_salle), + CONSTRAINT vip CHECK (vip_places >= 0); + CONSTRAINT min CHECK (min_places >= 0); + CONSTRAINT moyen CHECK (moyen_places >= 0); + ); + +CREATE TABLE piece( + nom_piece VARCHAR(100), + realisateur VARCHAR(100), + heros VARCHAR(100), + heroine VARCHAR0(100), + CONSTRAINT pk_piece PRIMARY KEY (nom_piece) + ); + +CREATE TABLE representation( + nom_piece VARCHAR(100), + horaire TIME, + jour DATE, + n_salle INTEGER, + CONSTRAINT pk_representation PRIMARY KEY (n_salle,horaire,jour), + CONSTRAINT fk_representation_salle + FOREIGN KEY (n_salle) REFERENCES Salle ON DELETE RESTRICT, + CONSTRAINT fk_representation_piece + FOREIGN KEY (nom_piece) REFERENCES piece ON DELETE CASCADE + ); + +CREATE TABLE place( + n_place INTEGER, + p_type VARCHAR(100), + n_salle INTEGER, + CONSTRAINT pk_place PRIMARY KEY (n_place), + CONSTRAINT fk_place_salle + FOREIGN KEY (n_salle) REFERENCES salle ON DELETE CASCADE, + CONSTRAINT type_de_place CHECK (p_type IN ('vip', 'min','moyen')) + ); + + + + -- GitLab