tp c4
diagramme de classe modèle relationnel
-- Génération d'une base de données pour -- PostgreSQL -- (2/3/2020 9:59:06)
-- Nom de la base : MLR2 -- Projet : -- Auteur : andré malraux -- Date de dernière modification : 2/3/2020 9:58:44
drop database MLR2;
-- CREATION DE LA BASE
CREATE DATABASE MLR2;
-- TABLE : CONSOMMABLES
CREATE TABLE CONSOMMABLES
(
REF_CONSO CHAR(10) NOT NULL ,
NUM_FOUR INTEGER NOT NULL ,
DESIGN_CONSO VARCHAR(50) NULL
, CONSTRAINT PK_CONSOMMABLES PRIMARY KEY (REF_CONSO)
);
-- INDEX DE LA TABLE CONSOMMABLES
CREATE INDEX I_FK_CONSOMMABLES_FOURNISSEURS ON CONSOMMABLES (NUM_FOUR) ;
-- TABLE : FAMILLE
CREATE TABLE FAMILLE
(
NUM_FAM CHAR(5) NOT NULL ,
LIB_FAM VARCHAR(32) NULL
, CONSTRAINT PK_FAMILLE PRIMARY KEY (NUM_FAM)
);
-- TABLE : DATE
CREATE TABLE DATE
(
CODE_DATE CHAR(10) NOT NULL
, CONSTRAINT PK_DATE PRIMARY KEY (CODE_DATE)
);
-- TABLE : MATERIELS
CREATE TABLE MATERIELS
(
NUM_MAT INTEGER NOT NULL ,
NUM_FOUR INTEGER NOT NULL ,
CODE_CENT CHAR(3) NOT NULL ,
NUM_FAM CHAR(5) NOT NULL ,
NOM_MAT VARCHAR(32) NULL ,
PRIX_ACHAT_MAT DECIMAL(6,2) NULL ,
DATE_ACHET_MAT CHAR(10) NULL ,
DUREE_GARAN_MAT INTEGER NULL
, CONSTRAINT PK_MATERIELS PRIMARY KEY (NUM_MAT)
);
-- INDEX DE LA TABLE MATERIELS
CREATE INDEX I_FK_MATERIELS_FOURNISSEURS ON MATERIELS (NUM_FOUR) ;
CREATE INDEX I_FK_MATERIELS_CENTRE ON MATERIELS (CODE_CENT) ;
CREATE INDEX I_FK_MATERIELS_FAMILLE ON MATERIELS (NUM_FAM) ;
-- TABLE : LIVRAISONS
CREATE TABLE LIVRAISONS
(
NUM_LIV INTEGER NOT NULL ,
CODE_CENT CHAR(3) NOT NULL ,
NUM_FOUR INTEGER NOT NULL ,
DATE_LIV CHAR(10) NULL
, CONSTRAINT PK_LIVRAISONS PRIMARY KEY (NUM_LIV)
);
-- INDEX DE LA TABLE LIVRAISONS
CREATE INDEX I_FK_LIVRAISONS_CENTRE ON LIVRAISONS (CODE_CENT) ;
CREATE INDEX I_FK_LIVRAISONS_FOURNISSEURS ON LIVRAISONS (NUM_FOUR) ;
-- TABLE : CENTRE
CREATE TABLE CENTRE
(
CODE_CENT CHAR(3) NOT NULL ,
NOM_CENT VARCHAR(32) NULL
, CONSTRAINT PK_CENTRE PRIMARY KEY (CODE_CENT)
);
-- TABLE : TYPE_PANNE
CREATE TABLE TYPE_PANNE
(
CODE_TYP_PANNE CHAR(3) NOT NULL ,
NATURE_PANNE VARCHAR(50) NULL
, CONSTRAINT PK_TYPE_PANNE PRIMARY KEY (CODE_TYP_PANNE)
);
-- TABLE : FOURNISSEURS
CREATE TABLE FOURNISSEURS
(
NUM_FOUR INTEGER NOT NULL ,
NOM_FOURN VARCHAR(32) NULL ,
TEL_FOURN CHAR(15) NULL ,
RUE_FOURN VARCHAR(32) NULL ,
CP_FOURN INTEGER NULL ,
VILLE_FOURN VARCHAR(32) NULL
, CONSTRAINT PK_FOURNISSEURS PRIMARY KEY (NUM_FOUR)
);