-- ============================================================ -- Nom de la base : MODELE_1 -- Nom de SGBD : ORACLE Version 8 -- Date de creation : 24/01/00 15:47 -- ============================================================ DROP TABLE JOUE CASCADE CONSTRAINTS / DROP TABLE REALISE CASCADE CONSTRAINTS / DROP TABLE SE_JOUE CASCADE CONSTRAINTS / DROP TABLE RESERVE CASCADE CONSTRAINTS / DROP TABLE FAIT_PARTIE CASCADE CONSTRAINTS / DROP TABLE SEANCE CASCADE CONSTRAINTS / DROP TABLE SALLE CASCADE CONSTRAINTS / DROP TABLE COMPLEXE CASCADE CONSTRAINTS / DROP TABLE ADRESSE CASCADE CONSTRAINTS / DROP TABLE PERSONNE CASCADE CONSTRAINTS / DROP TABLE CLUB CASCADE CONSTRAINTS / DROP TABLE TYPE CASCADE CONSTRAINTS / DROP TABLE FILM CASCADE CONSTRAINTS / -- ============================================================ -- Table : FILM -- ============================================================ CREATE TABLE FILM ( NUM_EXPLOITATION VARCHAR2(20) NOT NULL, DUREE_MIN INTEGER NULL , TITRE_VO VARCHAR2(200) NULL , TITRE_VF VARCHAR2(200) NULL , CONSTRAINT PK_FILM PRIMARY KEY (NUM_EXPLOITATION) ) / COMMENT ON TABLE FILM IS 'Film' / COMMENT ON COLUMN FILM.NUM_EXPLOITATION IS 'NUM EXPLOITATION' / COMMENT ON COLUMN FILM.DUREE_MIN IS 'duree' / COMMENT ON COLUMN FILM.TITRE_VO IS 'titre VO' / COMMENT ON COLUMN FILM.TITRE_VF IS 'titre VF' / -- ============================================================ -- Table : TYPE -- ============================================================ CREATE TABLE TYPE ( ID_TYPE INTEGER NOT NULL, TYP_ID_TYPE INTEGER NOT NULL, LIBELLE VARCHAR2(100) NULL , CONSTRAINT PK_TYPE PRIMARY KEY (ID_TYPE) ) / COMMENT ON TABLE TYPE IS 'Type' / COMMENT ON COLUMN TYPE.ID_TYPE IS 'ID TYPE' / COMMENT ON COLUMN TYPE.TYP_ID_TYPE IS 'TYP_ID TYPE' / COMMENT ON COLUMN TYPE.LIBELLE IS 'Libelle' / -- ============================================================ -- Index : ASSOC_12_FK -- ============================================================ CREATE INDEX ASSOC_12_FK ON TYPE (TYP_ID_TYPE ASC) / -- ============================================================ -- Table : CLUB -- ============================================================ CREATE TABLE CLUB ( NO_CLUB INTEGER NOT NULL, NOM VARCHAR2(100) NULL , CONSTRAINT PK_CLUB PRIMARY KEY (NO_CLUB) ) / COMMENT ON TABLE CLUB IS 'Club' / COMMENT ON COLUMN CLUB.NO_CLUB IS 'NO Club' / COMMENT ON COLUMN CLUB.NOM IS 'Nom' / -- ============================================================ -- Table : PERSONNE -- ============================================================ CREATE TABLE PERSONNE ( ID_PERSONNE INTEGER NOT NULL, ID_TYPE INTEGER NOT NULL, NOM VARCHAR2(100) NULL , PRENOM VARCHAR2(100) NULL , EMAIL VARCHAR2(100) NULL , DDN DATE NULL , CONSTRAINT PK_PERSONNE PRIMARY KEY (ID_PERSONNE) ) / COMMENT ON TABLE PERSONNE IS 'Personne' / COMMENT ON COLUMN PERSONNE.ID_PERSONNE IS 'ID Personne' / COMMENT ON COLUMN PERSONNE.ID_TYPE IS 'ID TYPE' / COMMENT ON COLUMN PERSONNE.NOM IS 'Nom' / COMMENT ON COLUMN PERSONNE.PRENOM IS 'Prenom' / COMMENT ON COLUMN PERSONNE.EMAIL IS 'email' / COMMENT ON COLUMN PERSONNE.DDN IS 'ddn' / -- ============================================================ -- Index : ASSOC_9_FK -- ============================================================ CREATE INDEX ASSOC_9_FK ON PERSONNE (ID_TYPE ASC) / -- ============================================================ -- Table : ADRESSE -- ============================================================ CREATE TABLE ADRESSE ( ID_ADRESSE INTEGER NOT NULL, ID_PERSONNE INTEGER NULL , LIGNE1 VARCHAR2(70) NULL , LIGNE2 VARCHAR2(70) NULL , LIGNE3 VARCHAR2(70) NULL , LIGNE4 VARCHAR2(70) NULL , LIGNE5 VARCHAR2(70) NULL , CONSTRAINT PK_ADRESSE PRIMARY KEY (ID_ADRESSE) ) / COMMENT ON TABLE ADRESSE IS 'Adresse' / COMMENT ON COLUMN ADRESSE.ID_ADRESSE IS 'ID_ADRESSE' / COMMENT ON COLUMN ADRESSE.ID_PERSONNE IS 'ID Personne' / COMMENT ON COLUMN ADRESSE.LIGNE1 IS 'Ligne1' / COMMENT ON COLUMN ADRESSE.LIGNE2 IS 'Ligne2' / COMMENT ON COLUMN ADRESSE.LIGNE3 IS 'Ligne3' / COMMENT ON COLUMN ADRESSE.LIGNE4 IS 'Ligne4' / COMMENT ON COLUMN ADRESSE.LIGNE5 IS 'Ligne5' / -- ============================================================ -- Index : ASSOC_39_FK -- ============================================================ CREATE INDEX ASSOC_39_FK ON ADRESSE (ID_PERSONNE ASC) / -- ============================================================ -- Table : COMPLEXE -- ============================================================ CREATE TABLE COMPLEXE ( NUM_COMPLEXE INTEGER NOT NULL, ID_ADRESSE INTEGER NOT NULL, NOM VARCHAR2(100) NULL , CONSTRAINT PK_COMPLEXE PRIMARY KEY (NUM_COMPLEXE) ) / COMMENT ON TABLE COMPLEXE IS 'Complexe' / COMMENT ON COLUMN COMPLEXE.NUM_COMPLEXE IS 'NUM complexe' / COMMENT ON COLUMN COMPLEXE.ID_ADRESSE IS 'ID_ADRESSE' / COMMENT ON COLUMN COMPLEXE.NOM IS 'Nom' / -- ============================================================ -- Index : ASSOC_36_FK2 -- ============================================================ CREATE INDEX ASSOC_36_FK2 ON COMPLEXE (ID_ADRESSE ASC) / -- ============================================================ -- Table : SALLE -- ============================================================ CREATE TABLE SALLE ( ID_SALLE INTEGER NOT NULL, NUM_COMPLEXE INTEGER NOT NULL, NBR_PLACE INTEGER NULL , NUM_SALLE INTEGER NULL , NOM VARCHAR2(100) NULL , CONSTRAINT PK_SALLE PRIMARY KEY (ID_SALLE) ) / COMMENT ON TABLE SALLE IS 'Salle' / COMMENT ON COLUMN SALLE.ID_SALLE IS 'id salle' / COMMENT ON COLUMN SALLE.NUM_COMPLEXE IS 'NUM complexe' / COMMENT ON COLUMN SALLE.NBR_PLACE IS 'nbr place' / COMMENT ON COLUMN SALLE.NUM_SALLE IS 'num salle' / COMMENT ON COLUMN SALLE.NOM IS 'Nom' / -- ============================================================ -- Index : ASSOC_33_FK -- ============================================================ CREATE INDEX ASSOC_33_FK ON SALLE (NUM_COMPLEXE ASC) / -- ============================================================ -- Table : SEANCE -- ============================================================ CREATE TABLE SEANCE ( ID_SEANCE INTEGER NOT NULL, ID_SALLE INTEGER NOT NULL, HORAIRE DATE NULL , CONSTRAINT PK_SEANCE PRIMARY KEY (ID_SEANCE) ) / COMMENT ON TABLE SEANCE IS 'Seance' / COMMENT ON COLUMN SEANCE.ID_SEANCE IS 'id seance' / COMMENT ON COLUMN SEANCE.ID_SALLE IS 'id salle' / COMMENT ON COLUMN SEANCE.HORAIRE IS 'horaire' / -- ============================================================ -- Index : ASSOC_30_FK -- ============================================================ CREATE INDEX ASSOC_30_FK ON SEANCE (ID_SALLE ASC) / -- ============================================================ -- Table : FAIT_PARTIE -- ============================================================ CREATE TABLE FAIT_PARTIE ( ID_PERSONNE INTEGER NOT NULL, NO_CLUB INTEGER NOT NULL, NUM_ADHERENT INTEGER NULL , CONSTRAINT PK_FAIT_PARTIE PRIMARY KEY (ID_PERSONNE, NO_CLUB) ) / COMMENT ON TABLE FAIT_PARTIE IS 'Fait partie' / COMMENT ON COLUMN FAIT_PARTIE.ID_PERSONNE IS 'ID Personne' / COMMENT ON COLUMN FAIT_PARTIE.NO_CLUB IS 'NO Club' / COMMENT ON COLUMN FAIT_PARTIE.NUM_ADHERENT IS 'NUM Adherent' / -- ============================================================ -- Index : LIEN_16_FK -- ============================================================ CREATE INDEX LIEN_16_FK ON FAIT_PARTIE (ID_PERSONNE ASC) / -- ============================================================ -- Index : LIEN_17_FK -- ============================================================ CREATE INDEX LIEN_17_FK ON FAIT_PARTIE (NO_CLUB ASC) / -- ============================================================ -- Table : RESERVE -- ============================================================ CREATE TABLE RESERVE ( NO_CLUB INTEGER NOT NULL, ID_SEANCE INTEGER NOT NULL, NOMBRE_PLACE INTEGER NULL , CONSTRAINT PK_RESERVE PRIMARY KEY (NO_CLUB, ID_SEANCE) ) / COMMENT ON TABLE RESERVE IS 'Reserve' / COMMENT ON COLUMN RESERVE.NO_CLUB IS 'NO Club' / COMMENT ON COLUMN RESERVE.ID_SEANCE IS 'id seance' / COMMENT ON COLUMN RESERVE.NOMBRE_PLACE IS 'nombre place' / -- ============================================================ -- Index : LIEN_19_FK -- ============================================================ CREATE INDEX LIEN_19_FK ON RESERVE (NO_CLUB ASC) / -- ============================================================ -- Index : LIEN_20_FK -- ============================================================ CREATE INDEX LIEN_20_FK ON RESERVE (ID_SEANCE ASC) / -- ============================================================ -- Table : SE_JOUE -- ============================================================ CREATE TABLE SE_JOUE ( NUM_EXPLOITATION VARCHAR2(20) NOT NULL, ID_SEANCE INTEGER NOT NULL, CONSTRAINT PK_SE_JOUE PRIMARY KEY (NUM_EXPLOITATION, ID_SEANCE) ) / COMMENT ON TABLE SE_JOUE IS 'se joue' / COMMENT ON COLUMN SE_JOUE.NUM_EXPLOITATION IS 'NUM EXPLOITATION' / COMMENT ON COLUMN SE_JOUE.ID_SEANCE IS 'id seance' / -- ============================================================ -- Index : LIEN_22_FK -- ============================================================ CREATE INDEX LIEN_22_FK ON SE_JOUE (NUM_EXPLOITATION ASC) / -- ============================================================ -- Index : LIEN_23_FK -- ============================================================ CREATE INDEX LIEN_23_FK ON SE_JOUE (ID_SEANCE ASC) / -- ============================================================ -- Table : REALISE -- ============================================================ CREATE TABLE REALISE ( NUM_EXPLOITATION VARCHAR2(20) NOT NULL, ID_PERSONNE INTEGER NOT NULL, CONSTRAINT PK_REALISE PRIMARY KEY (NUM_EXPLOITATION, ID_PERSONNE) ) / COMMENT ON TABLE REALISE IS 'Realise' / COMMENT ON COLUMN REALISE.NUM_EXPLOITATION IS 'NUM EXPLOITATION' / COMMENT ON COLUMN REALISE.ID_PERSONNE IS 'ID Personne' / -- ============================================================ -- Index : LIEN_25_FK -- ============================================================ CREATE INDEX LIEN_25_FK ON REALISE (NUM_EXPLOITATION ASC) / -- ============================================================ -- Index : LIEN_26_FK -- ============================================================ CREATE INDEX LIEN_26_FK ON REALISE (ID_PERSONNE ASC) / -- ============================================================ -- Table : JOUE -- ============================================================ CREATE TABLE JOUE ( NUM_EXPLOITATION VARCHAR2(20) NOT NULL, ID_PERSONNE INTEGER NOT NULL, CONSTRAINT PK_JOUE PRIMARY KEY (NUM_EXPLOITATION, ID_PERSONNE) ) / COMMENT ON TABLE JOUE IS 'Joue' / COMMENT ON COLUMN JOUE.NUM_EXPLOITATION IS 'NUM EXPLOITATION' / COMMENT ON COLUMN JOUE.ID_PERSONNE IS 'ID Personne' / -- ============================================================ -- Index : LIEN_28_FK -- ============================================================ CREATE INDEX LIEN_28_FK ON JOUE (NUM_EXPLOITATION ASC) / -- ============================================================ -- Index : LIEN_29_FK -- ============================================================ CREATE INDEX LIEN_29_FK ON JOUE (ID_PERSONNE ASC) / ALTER TABLE TYPE ADD CONSTRAINT FK_TYPE_ASSOC_12_TYPE FOREIGN KEY (TYP_ID_TYPE) REFERENCES TYPE (ID_TYPE) / ALTER TABLE PERSONNE ADD CONSTRAINT FK_PERSONNE_ASSOC_9_TYPE FOREIGN KEY (ID_TYPE) REFERENCES TYPE (ID_TYPE) / ALTER TABLE ADRESSE ADD CONSTRAINT FK_ADRESSE_ASSOC_39_PERSONNE FOREIGN KEY (ID_PERSONNE) REFERENCES PERSONNE (ID_PERSONNE) / ALTER TABLE COMPLEXE ADD CONSTRAINT FK_COMPLEXE_ASSOC_362_ADRESSE FOREIGN KEY (ID_ADRESSE) REFERENCES ADRESSE (ID_ADRESSE) / ALTER TABLE SALLE ADD CONSTRAINT FK_SALLE_ASSOC_33_COMPLEXE FOREIGN KEY (NUM_COMPLEXE) REFERENCES COMPLEXE (NUM_COMPLEXE) / ALTER TABLE SEANCE ADD CONSTRAINT FK_SEANCE_ASSOC_30_SALLE FOREIGN KEY (ID_SALLE) REFERENCES SALLE (ID_SALLE) / ALTER TABLE FAIT_PARTIE ADD CONSTRAINT FK_FAIT_PAR_LIEN_16_PERSONNE FOREIGN KEY (ID_PERSONNE) REFERENCES PERSONNE (ID_PERSONNE) / ALTER TABLE FAIT_PARTIE ADD CONSTRAINT FK_FAIT_PAR_LIEN_17_CLUB FOREIGN KEY (NO_CLUB) REFERENCES CLUB (NO_CLUB) / ALTER TABLE RESERVE ADD CONSTRAINT FK_RESERVE_LIEN_19_CLUB FOREIGN KEY (NO_CLUB) REFERENCES CLUB (NO_CLUB) / ALTER TABLE RESERVE ADD CONSTRAINT FK_RESERVE_LIEN_20_SEANCE FOREIGN KEY (ID_SEANCE) REFERENCES SEANCE (ID_SEANCE) / ALTER TABLE SE_JOUE ADD CONSTRAINT FK_SE_JOUE_LIEN_22_FILM FOREIGN KEY (NUM_EXPLOITATION) REFERENCES FILM (NUM_EXPLOITATION) / ALTER TABLE SE_JOUE ADD CONSTRAINT FK_SE_JOUE_LIEN_23_SEANCE FOREIGN KEY (ID_SEANCE) REFERENCES SEANCE (ID_SEANCE) / ALTER TABLE REALISE ADD CONSTRAINT FK_REALISE_LIEN_25_FILM FOREIGN KEY (NUM_EXPLOITATION) REFERENCES FILM (NUM_EXPLOITATION) / ALTER TABLE REALISE ADD CONSTRAINT FK_REALISE_LIEN_26_PERSONNE FOREIGN KEY (ID_PERSONNE) REFERENCES PERSONNE (ID_PERSONNE) / ALTER TABLE JOUE ADD CONSTRAINT FK_JOUE_LIEN_28_FILM FOREIGN KEY (NUM_EXPLOITATION) REFERENCES FILM (NUM_EXPLOITATION) / ALTER TABLE JOUE ADD CONSTRAINT FK_JOUE_LIEN_29_PERSONNE FOREIGN KEY (ID_PERSONNE) REFERENCES PERSONNE (ID_PERSONNE) /