QCM PL/SQL Corrigé – Partie 21
QCM sur PL/SQL avec des réponses pour la préparation des entretiens d’embauche, tests en ligne, examens et certifications. Ces questions et réponses sur PL/SQL comprennent divers sujets tel que les bases de PL/SQL, les variables, les constantes, les boucles, les déclencheurs, les curseurs, les procédures, etc…. Et sont tirés d’un vrai entretien écrit et certaines parties sont en direct. Cette méthode d’apprentissage systématique préparera facilement toute personne pour réussir son test sur PL/SQL.
1. Quelle est la syntaxe correcte pour déclarer un paramètre d’entrée dans une procédure PL/SQL ?
A IN <param_name> <type>
B OUT <param_name> <type>
C INOUT <param_name> <type>
D <param_name> <type> IN
2. Que fait le code PL/SQL suivant ?
BEGIN TRUNCATE TABLE employees; COMMIT; END;
A Il supprime la table employees et toutes ses données.
B Il insère de nouvelles lignes dans la table employees.
C Il met à jour les enregistrements existants dans la table employees.
D Il supprime toutes les lignes de la table employees sans supprimer la structure de la table et valide la transaction.
3. Qu’est-ce qui est VRAI à propos des fonctionnalités PL/SQL ?
A Les conditions et les boucles sont des éléments fondamentaux des langages procéduraux comme PL/SQL.
B Différents types et variables peuvent être déclarés, tout comme les procédures et fonctions, ainsi que les types et variables de ces types.
C Les tableaux peuvent être utilisés ainsi que la gestion des exceptions.
D Toutes les réponses sont vraies
4. La ___________ du base de donnée Oracle est héritée en PL/SQL.
A Portabilité
B Robustesse
C Sécurité
D Toutes les réponses sont vraies
5. Que fait le code PL/SQL suivant ?
REVOKE INSERT, UPDATE ON employees FROM john;
A Il retire à l’utilisateur john les privilèges INSERT et UPDATE sur la table employees.
B Il accorde à l’utilisateur john les privilèges INSERT et UPDATE sur la table employees.
C Il renomme la table employees.
D Il supprime l’utilisateur john de la base de données.
6. Le texte PL/SQL est composé d’unités lexicales, qui sont des groupes de caractères et qui peuvent être classées comme suit:
A Délimiteurs
B Identificateurs
C Littéraux
D Toutes les réponses sont vraies
7. Le terme ________________ désigne une déclaration comportant une limite de taille, d’échelle ou de précision.
A Définition contrainte
B Décision constante
C Déclaration avec contrainte
D Déclaration constante
8. Que fait le code PL/SQL suivant ?
DECLARE v_day INT := 3; BEGIN CASE v_day WHEN 1 THEN DBMS_OUTPUT.PUT_LINE('Lundi'); WHEN 2 THEN DBMS_OUTPUT.PUT_LINE('Mardi'); WHEN 3 THEN DBMS_OUTPUT.PUT_LINE('Mercredi'); ELSE DBMS_OUTPUT.PUT_LINE('Autre jour'); END CASE; END;
A Il affiche « Lundi » car v_day est égal à 3.
B Il affiche « Mercredi » car v_day est égal à 3.
C Il affiche « Autre jour » car v_day n’est pas 1 ni 2.
D Il génère une erreur car la valeur de v_day est 3.
9. Quelle est la bonne syntaxe pour déclarer un curseur explicite en PL/SQL ?
A CURSOR cursor_name IS SELECT column FROM table;
B DECLARE CURSOR cursor_name SELECT column FROM table;
C DECLARE cursor_name CURSOR SELECT column FROM table;
D CURSOR cursor_name FOR SELECT column FROM table;
10. Que fait le code PL/SQL suivant ?
CREATE OR REPLACE FUNCTION calculate_bonus(p_salary NUMBER) RETURN NUMBER IS BEGIN RETURN p_salary * 0.1; END;
A Cette fonction calcule un bonus de 10 % sur un salaire donné.
B Cette fonction retourne une chaîne de caractères représentant un bonus.
C Cette fonction génère une erreur car le type de retour est incorrect.
D Cette fonction n’existe pas, car les fonctions ne peuvent pas avoir de paramètres.