QCM PL/SQL Corrigé – Partie 7

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. Quel est le type de données utilisé pour stocker des dates en PL/SQL ?

A DATE

B TIMESTAMP

C DATETIME

D TIME

A
En PL/SQL, le type de données utilisé pour stocker des dates est DATE, qui inclut non seulement la date, mais aussi l’heure. Le type TIMESTAMP peut également être utilisé si vous avez besoin d’une précision supplémentaire, mais DATE est le type de base pour stocker des informations sur la date et l’heure. L’option C est incorrecte, car DATETIME n’est pas un type valide en PL/SQL. L’option D est incorrecte, car TIME n’est pas un type de données valide en PL/SQL.

 

 

2. Quelle instruction en PL/SQL permet d’exécuter une instruction SQL dynamique ?

A CALL SQL

B DYNAMIC SQL

C RUN SQL

D EXECUTE IMMEDIATE

D
EXECUTE IMMEDIATE est utilisé pour exécuter des instructions SQL dynamiques dans PL/SQL. Cela permet d’exécuter des instructions SQL qui sont générées dynamiquement au moment de l’exécution.

 

 

3. Quand est-il nécessaire d’utiliser l’instruction EXECUTE IMMEDIATE en PL/SQL ?

A Pour exécuter des requêtes INSERT uniquement.

B Pour exécuter des instructions SELECT sans stockage.

C Lorsqu’une requête SQL doit être dynamique (générée au moment de l’exécution).

D Pour effectuer des mises à jour sans utiliser de curseur.

C
L’instruction EXECUTE IMMEDIATE est utilisée en PL/SQL pour exécuter des requêtes SQL dynamiques. Cela signifie que la requête est construite au moment de l’exécution, souvent en fonction de conditions ou d’entrées de l’utilisateur. Par exemple:

EXECUTE IMMEDIATE 'SELECT * FROM ' || table_name;

 

 
 

4. Qu’est-ce qu’une table temporaire en PL/SQL ?

A Une table qui est créée et existe seulement pendant la durée d’une session.

B Une table qui est automatiquement supprimée à la fin d’un programme PL/SQL.

C Une table utilisée pour stocker des résultats intermédiaires dans une procédure.

D Une table qui stocke les erreurs d’exécution.

A
Une table temporaire en PL/SQL est une table qui existe uniquement pendant la durée d’une session ou jusqu’à la fin de la transaction en cours. Ces tables sont créées par l’utilisateur pour stocker des données temporaires.

 

 

5. Comment peut-on fermer un curseur explicite en PL/SQL ?

A CLOSE cursor_name;

B END cursor_name;

C EXIT cursor_name;

D TERMINATE cursor_name;

A
Une fois qu’un curseur explicite a été ouvert et utilisé, il doit être fermé avec l’instruction CLOSE <cursor_name>. Cela libère les ressources associées au curseur.

 

 

6. Que fait l’exception WHEN OTHERS en PL/SQL ?

A Elle capture toutes les exceptions non spécifiées et permet d’exécuter du code pour les traiter.

B Elle termine immédiatement l’exécution du programme.

C Elle capture uniquement les erreurs liées aux requêtes SQL.

D Elle est utilisée pour définir un bloc FOR à la place d’une boucle WHILE.

A
L’exception WHEN OTHERS est une clause générique qui capture toutes les exceptions non spécifiées dans un bloc EXCEPTION. Elle est souvent utilisée comme dernière option pour capturer toutes les erreurs qui n’ont pas été gérées par d’autres exceptions spécifiques. Exemple :

EXCEPTION
  WHEN OTHERS THEN
    -- Code pour gérer toutes les erreurs

 

 
 

7. Quelle est la différence entre VARCHAR2 et CHAR en PL/SQL ?

A CHAR est plus efficace pour stocker des données textuelles, tandis que VARCHAR2 ne l’est pas.

B CHAR peut contenir des nombres et VARCHAR2 ne peut contenir que des chaînes de caractères.

C VARCHAR2 est plus limité en termes de taille que CHAR.

D VARCHAR2 est pour les chaînes de longueur variable, tandis que CHAR est pour les chaînes de longueur fixe.

A
En PL/SQL, CHAR est utilisé pour stocker des chaînes de caractères de longueur fixe, tandis que VARCHAR2 est utilisé pour des chaînes de longueur variable. Si une chaîne de longueur inférieure à la taille définie est stockée dans une variable CHAR, la base de données la complète avec des espaces. Par contre, VARCHAR2 ne réserve de l’espace que pour le nombre de caractères réellement présents dans la chaîne.

 

 

8. Quel est le rôle de l’instruction SAVEPOINT en PL/SQL ?

A Elle permet de créer un point de restauration dans une transaction, afin de pouvoir revenir à ce point si nécessaire.

B Elle permet de démarrer une nouvelle transaction.

C Elle permet d’annuler une transaction entière.

D Elle permet de valider une transaction dans la base de données.

A
L’instruction SAVEPOINT est utilisée pour définir un point de restauration dans une transaction. Si une erreur se produit plus tard dans la transaction, vous pouvez revenir à ce point en utilisant l’instruction ROLLBACK TO SAVEPOINT. Cela permet de gérer les erreurs de manière plus granulaire sans annuler toute la transaction.

 

 

9. Quelle est la bonne syntaxe pour ouvrir un curseur dans PL/SQL ?

A OPEN c_cursor;

B OPEN c_cursor FOR SELECT * FROM table_name;

C OPEN c_cursor USING SELECT * FROM table_name;

D OPEN c_cursor FOR BEGIN SELECT * FROM table_name;

B
Un curseur explicite en PL/SQL est ouvert avec la syntaxe OPEN nom_du_curseur FOR. Il peut être associé à une requête SELECT pour récupérer des données dans une table. Par exemple:

OPEN c_cursor FOR SELECT * FROM employees;

 

 
 

10. Que fait l’instruction CLOSE dans un curseur PL/SQL ?

A Elle ferme la connexion à la base de données.

B Elle ferme le curseur et libère les ressources associées.

C Elle annule les résultats de la requête dans le curseur.

D Elle arrête l’exécution de la boucle associée au curseur.

B
L’instruction CLOSE est utilisée pour fermer un curseur explicite en PL/SQL et libérer les ressources associées à celui-ci. Il est important de fermer les curseurs lorsqu’ils ne sont plus nécessaires pour éviter les fuites de mémoire ou des problèmes de performance.

 

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *