Vous êtes sur la page 1sur 2

TP1

1) Création des tables :

a) CREATE TABLE CLIENT(


Numcli NUMBER(7) NOt NULL,
Nom VARCHAR(15) NOT NULL,
Prénom VARCHAR(15) NOT NULL,
Tél VARCHAR(12),
Adresse VARCHAR(20),
Ville VARCHAR(15),
Pays VARCHAR(15),
CONSTRAINT clé_pri_cli PRIMARY KEY (Numcli));

b) CREATE TABLE PRODUIT(


Numprod NUMBER(7) NOT NULL,
Designation VARCHAR(15) NOT NULL,
Description VARCHAR(30),
Prix NUMBER(11,2),
QteStock NUMBER(7),
CONSTRAINT clé_pri_prod PRIMARY KEY (Numprod));

c) CREATE TABLE COMMANDE(


Numcom NUMBER(7) NOT NULL,
Numcli NUMBER(7),
Datecom DATE,
Datelivrai DATE,
CONSTRAINT clé_pri_com PRIMARY KEY (Numcom),
CONSTRAINT clé_étr_com FOREIGN KEY (Numcli)
REFERENCES CLIENT(Numcli));

d) CREATE TABLE LIGNE_COMMANDE (


Numprod NUMBER(7),
Prix NUMBER(11,2),
Qtecom NUMBER(9),
Numcom NUMBER(7),
CONSTRAINT clé_pri_lign PRIMARY KEY (Numprod,Numcom),
CONSTRAINT clé1_étr_lign FOREIGN KEY (Numprod)
REFERENCES PRODUIT(Numprod),
CONSTRAINT clé2_étr_lign FOREIGN KEY (Numcom)
REFERENCES COMMANDE(Numcom));

2) Les contrainres d’intégrités :

a) ALTER TABLE CLIENT ADD CONSTRAINT Pays_client CHECK (Pays IN


('Maroc','France','Egypt'));
b) ALTER TABLE COMMANDE ADD CONSTRAINT dates_ok CHECK
(Datecom<=Datelivrai);
c) ALTER TABLE PRODUIT ADD CONSTRAINT QteStock_ok CHECK (QteStock>=0);

3) INSERT INTO Nom_table VALUES (Valeur1,...,ValeurN) ;

4) INSERT INTO CLIENT VALUES(10,'Naciri','Mohammed','061 00 00 00','Hay My Ismaïl


N°4','Méknès','Maroc');

5) ROLLBACK;

6) INSERT INTO CLIENT VALUES(valeur1,...,valeurN);

7) COMMIT;

8) CREATE TABLE CLIENT_RABAT AS SELECT * FROM CLIENT WHERE Ville = 'Rabat';

Vous aimerez peut-être aussi