Vous êtes sur la page 1sur 7

Nom, Postnom et Prénom : No Matricule :

UNIVERSITE DE LUBUMBASHI (UNILU)


MATH – INFO
COURS : BASE DES DONNEES 2
EXAMEN Novembre 2022
Prof. Patrick Mukala, PhD

PROMOTION BAC3: Informatique

Date: 28/11/2022

Durée: 2h30

NOTEZ BIEN : Aucun document n’est permis. Les réponses doivent être
exclusivement écrites sur ce papier

1
Question 1 [8]

Ecrire un bloc anonyme PL/SQL qui demandera à l'utilisateur d'entrer son nom, puis d'imprimer
automatiquement (au moyen d’une boucle) le nom progressivement lettre par lettre comme
représenté par la forme dans la sortie de l’échantillon :

Entrez la valeur pour le nom : Eliore


******E
*****El
****Eli
***Elio
**Elior
*Eliore

PL/SQL procedure successfully completed.

2
Question 2 [10]

Créez un bloc de code PL/SQL anonyme qui peut faire ce qui suit :

Invitez l’utilisateur à entrer son nom de famille (jusqu’à 20 caractères alphanumériques – aucun
espace autorisé) et sa date de naissance (8 chiffres numériques) via les variables de substitution
SQL*Plus. Vous devez créer un numéro de personnel pour l’employé en utilisant la méthode
suivante :
- Si le nom est fait de plus de 6 lettres :
• Les 3 premiers caractères du numéro du personnel sont les trois premiers
caractères du nom de famille.
• Les 3 caractères suivants du numéro de personnel sont les 3 derniers chiffres
de la date de naissance de l’employé
- Au cas contraire :
• Les 3 premiers caractères du numéro du personnel sont les trois derniers
caractères du nom de famille.
• Les 3 caractères suivants du numéro de personnel sont les 3 derniers chiffres
de la date de naissance de l’employé

Affichez le numéro de personnel de l’utilisateur avec un message pertinent à l’écran (à l’aide d’un
paquet fourni par Oracle).

3
Le reste des questions se rapporte à la Base de Données suivante sur l’entreprise de transport
ELIORE & ELINE:

4
Question 3 [10]

Ecrivez un programme PL/SQL qui affiche, usant d’un curseur et d’un tableau d’enregistrements,
les détails des clients qui sont partis de Kinshasa à 15h00 et arrives à Matadi à 01h00 entre le 4
et 7 Novembre 2020.

Question 4 [20]

Ecrivez un bloc PL/SQL pour :


a) Entrer l’ID du trajet;
b) Afficher la date, heure départ, heure d’arrivé, le nom du client et sa destination.
Si ce trajet n’existe pas ou si l’ID est incorrect, afficher un message d’erreur y afférent à l’aide des
exceptions prédéfinies par oracle.

5
Question 5 [16]

a. Ecrivez un programme PL/SQL qui affichera le nombre total ainsi que les détails de tous
les chauffeurs ayant moins de 25 ans mais dont le salaire est inférieur au salaire moyen
des chauffeurs.

6
b. Écrire un bloc PL/SQL anonyme qui affiche le lieu de destination et le tarif des 10
destinations les plus chers de la table Destination.
Indications :
- Définir un curseur qui liste les lieux par ordre de tarif décroissant.
- Effectuer un parcours explicite du curseur qui fonctionne tant que le nombre de n-
uplets lus est inférieur à 10.

Vous aimerez peut-être aussi