Université Hassan II-Casablanca Année Universitaire : 2017-18
Faculté des sciences Ben M’sik
Département des Maths et Informatique
Examen de programmation BD
Durée -1h 30 min-
La rédaction sera largement prise en considération
Cours :
Citez les différents types d’exceptions traités en PL/SQL et préciser comment utiliser
chaque type d’exception ?.
Exercice :
Soit le schéma relationnel de la base de données « pilotes-avions-vols ».
PILOTE (PLNUM, PLNOM, PLPRENOM, VILLE, SALAIRE)
AVION (AVNUM, AVNOM, CAPACITE, LOCALISATION)
VOL (VOLNUM, PLNUM, AVNUM, VILLEDEP, VILLEARR, HEUREDEP, HEUREARR)
1. Ecrire un bloc PL/SQL qui supprime les pilotes affectés à un vol ; utilisez un paramètre
de substitution SQL*Plus pour le numéro de vol, puis afficher à l’écran le nombre
d’enregistrements affectés.
2. Ecrire une procédure qui affiche le numéro, le nom et le nombre de vols de chaque pilote.
3. Ecrire un bloc PL/SQL qui permet d’augmenter de 10% le salaire des pilotes affectés à
plus de 6 vols.
Conserver les numéros de ces pilotes dans un tableau dédié à cet effet puis parcourir ce
dernier tout en mettant à jour le salaire dans la table PILOTE.
4. Ecrire une procédure pour obtenir toutes les localisations ayant plus de 10 avions
attachés ainsi que ces avions. Insérez le résultat dans la table AVION_LOC. Utilisez un
curseur pour obtenir la localisation passer cette localisation à un curseur pour obtenir
les avions attachés de cette localisation.
5. Ecrire une procédure PL/SQL qui affiche le nombre de pilotes qui gagnent le salaire
maximal.
a.S’il n’y a pas de pilotes, afficher un message à l’utilisateur en utilisant une
exception.
b. S’il y a au moins un pilote, le message doit indiquer combien d’employés
toujours en utilisant une exception.
c. Traiter toute autre exception avec une fonction appropriée. Le message doit
indiquer qu’une autre erreur est survenue.
6. Ecrire un déclencheur qui doit supprimer de la table VOL tous les vols d’un avion à
supprimer de la table AVION.
7. Ecrire un déclencheur qui doit envoyer un message d’alerte lorsque suite à une mise à
jour ou insertion, on trouve un pilote affecté à plus de 10 vols.
Bonne Chance
Page : 1/1