TD03
TD03
TD03
Dans tous les exercices de ce TD, nous allons travailler sur le schéma relationnel fourni dans le
cours à savoir :
Client(codclt, nomclt, ville, caclt)
Commande(numcde, datecde, mntcde, codclt#)
Article(codart, nomart, couleur, prixunit, qtestck)
Lignecde(codart#, numcde#, qtecdee)
Connectez-vous à Oracle sous le compte qui a été créé pour les travaux non présentiels.
Si le compte n’est pas encore créé, créez un qui porte votre nom dans lequel vous allez
effectuer tous les travaux non présentiels de ce module et commencez tout d’abord par créer
la BD ci-dessus dont le script de création est fourni sous Moodle.
Vous devez déposer un compte-rendu individuel (sous forme pdf et sous Moodle exclusiment)
relatif à ce TD.
Pour chacun des exercices, vous devez mettre une imprime écran de l’exécution de votre
solution montrant le résultat ainsi que votre compte sur lequel vous travaillez. Les travaux
sans visualisation du compte ne seront pas acceptés. Par exemple :
Exercice 1 :
a) Écrire une procédure PL/SQL appelée « GET_Prix_et_qte » qui prend en entrée le code
d'un article et qui affiche le prix unitaire et la quantité en stock de cet article. Gérer par
une exception le cas où l’article n'existe pas.
b) Ecrire un script PL/SQL anonyme permettant d’accepter à partir du clavier le code d’un
article et qui affiche :
Exercice 2 :
Partie SQL : Ajoutez à la table « Client » un champ appelé « NbreCdes » de type NUMBER qui
prend 0 comme valeur par défaut.
Partie PL/SQL :
a) Écrire un bloc PL/SQL anonyme permettant de mettre à jour le champ « NbreCdes » de la
table « Client ». La valeur de « NbreCdes » pour un client donné est égale au nombre de
commandes passées par ce client.
b) Écrire un déclencheur appelé « Trigger_MAJ_NbreCdes » permettant de mettre à jour
l’attribut « NbreCdes » de la table « Client » suite à une insertion d’une nouvelle
commande (NbreCdes = NbreCdes +1) ou la suppression d’une commande existante
(NbreCdes = NbreCdes -1).
Exercice 3 :
Écrire un déclencheur appelé « TriggerVerifCouleur» permettant de vérifier avant toute insertion
d’un nouvel article ou la modification d’un article existant que la couleur de l’article à insérer ou à
modifier doit être parmi les suivantes : (rouge, vert, bleu, noir). Si l’article à insérer ou à modifier
ne remplit pas la condition de couleur lancer une exception avec un message d'erreur.
Bon courage