Vous êtes sur la page 1sur 2

FORMATION CONTINUE –

ETUDE DE CAS N° 1
Module Bases de Données Relationnelles TP 1 : Le LDD d’Oracle
Formateur M. Med Ali Zoghlami Durée 3h

Objectif du TP :
• Connaitre le LDD d’Oracle à travers la création et la modification des
structures des tables.
Le schéma relationnel présenté ci-après décrit le système de gestion commerciale
d’une entreprise qui vend des articles à ses clients.

Client(codclt, nomclt, ville, caclt)


Commande(numcde, datecde, mntcde, codclt#)
Article(codart, nomArt, couleur, qtestck, prixunit)
Lignecde(codart#, numcde#, qtecdee)

Les différents attributs sont définis comme suit :

Champs Désignation type Long.


codclt Code du client entier
nomclt Nom du client Chaine de car. 20
ville Ville du client Chaine de car. 20
Caclt Chiffre d’affaires réalisé avec le client entier 8.3
numcde Numéro de la commande passée par le entier
client
datecde Date de la commande date
mntcde Montant de la commande entier 8.3
codart Code de l’article commandé par le client entier
nomArt Nom de l’article Chaine de car. 20
couleur Couleur de l’article Chaine de car. 20
qtestck Quantité en stock de l’article entier
prixunit Prix unitaire de l’article entier 8.3
qtecdee Quantité commandée de l’article entier
numéro « codart» à travers la
commande numéro « numcde»

SESAME – Page 1 (2)


Etude de cas
Travail demandé : En utilisant le langage SQL, proposez des solutions pour les requêtes ci-après :
(chaque requête doit être enregistrée sous un nom spécifique Req1Tp1, Req2Tp1, Req3Tp1, etc…
)

1- Créez la table Client sans aucune contrainte (même pas de contrainte de clé primaire).
2- Créez la table Article avec une contrainte de colonne appelée « pk_Article » de type clé
primaire.
3- Ajoutez à la table client une contrainte de clé primaire, appelée pk_client sur l’attribut
codclt.
4- Créez la table Commande avec seulement une contrainte de table appelée
« pk_commande » de type clé primaire.
5- Ajoutez à la table Commande une contrainte de clé étrangère, appelée fk_commande
sur l’attribut codclt.
6- Créez la table LigneCde en utilisant au même temps des contraintes de colonnes et de
contraintes de table (donnez des noms de votre choix à ces contraintes).
7- Ajouter à la table LigneCde une contrainte de domaine, appelée QtCdee_Positive sur
l’attribut qtecdee de telle sorte que cet attribut n’accepte que des entiers positifs.
8- Ajoutez à la table Client une colonne appelée codpost (code postale) de type entier et
de longueur 4.
9- Augmentez la taille de l’attribut couleur de la table Article à 25 caractères.
10- Ajoutez à la table Article une colonne appelée typeArt de type chaîne de caractères et
de longueur 20.
11- Supprimez la colonne typeArt de la table Article.
12- Créez une table ClientTunis(code, nom) à partir de la table client qui regroupe que les
clients habitant la ville de Tunis.
13- Créez un index ind_caClt sur le chiffre d’affaires des clients, trié d’une manière
croissante.
14-Créez un index ind_MnCde_DateCde sur les deux attributs MntCde trié d’une manière
croissante et sur DateCde trié d’une manière décroissante.
15- Créer une séquence Seq_Clt qui commence la génération automatique des entiers à
partir de 1, avec un intervalle d’incrémentation de 1 et dont la valeur maximale est 999.
16- En utilisant la séquence Seq_Clt, insérer une ligne dans la table client avec un chiffre
d’affaires caclt > 1000
17-Afficher la valeur actuelle de la séquence Seq_Clt.
18- Créez une vue VueClients (code, nom, caclt) à partir de la table client qui regroupe
que les clients qui ont un chiffre d’affaires caclt > 1000
19- Lancez la commande adéquate pour afficher, à partir du dictionnaire de données, les
différentes contraintes créées sur la table LigneCde.
20- Lancez la commande adéquate pour afficher, à partir du dictionnaire de données, les
différents index créés sur la table Commande.
21-Supprimez la table ClientTunis.

SESAME – Page 2 (2)

Vous aimerez peut-être aussi