From b07dda192f8fa71ba227a509a931bf27bc00d72d Mon Sep 17 00:00:00 2001 From: frglazio Date: Tue, 2 Mar 2021 21:32:32 +0100 Subject: [PATCH] Upload New File --- QUIZZ/2020-BD_PROC_Cours-1.5_a_1-7.tex | 159 +++++++++++++++++++++++++ 1 file changed, 159 insertions(+) create mode 100644 QUIZZ/2020-BD_PROC_Cours-1.5_a_1-7.tex diff --git a/QUIZZ/2020-BD_PROC_Cours-1.5_a_1-7.tex b/QUIZZ/2020-BD_PROC_Cours-1.5_a_1-7.tex new file mode 100644 index 0000000..49930fc --- /dev/null +++ b/QUIZZ/2020-BD_PROC_Cours-1.5_a_1-7.tex @@ -0,0 +1,159 @@ +\documentclass[12pt]{article} +%\usepackage{moodle} +\usepackage{sanssolmoodle} +\usepackage[T1]{fontenc} + +\begin{document} + +\begin{quiz}{Quizz Cours PRO*C, Chapitre 1.5 a 1.7} + + +\begin{multi}[multiple, points=1]{01-SQLCA.H} +La structure de donn\'ees SQLCA sert \`a quoi ? +\item* \`a stocker les donn\'ees du compte rendu d'ex\'ecution d'un ordre SQL +\item \`a remplir des lignes de code dans le programme +\end{multi} + +\begin{multi}[points=1]{02-SQLCA.H} +La variable sqlcode sert \`a quoi ? +\item* stocker le code retour r\'esultant de l'ex\'ecution de l'ordre SQL +\item stocker le code du traitement SQL +\end{multi} + +\begin{multi}[multiple, points=1]{03-SQLCA.H} +La variable sqlca.sqlcode peux prendre plus valeurs.\\ +Quelle valeur correspond \`a sa d\'efinition ? +\item* =0 - traitement d\'eroul\'e sans erreur +\item =0 - aucun code retour +\item* >0 - traitement d\'eroul\'e sans erreur mais avec un code d'\'etat +\item >0 - traitement en erreur +\item* < 0 - traitement avec des erreurs +\item <0 - traitement d\'eroul\'e sans erreur +\end{multi} + +\begin{multi}[multiple, points=1]{04-SQLCA.H} +La variable sqlerrd[2] sert \`a quoi ? +\item \`a se trouver entre la position 1 et 3 +\item* donner le nombre de lignes modifi\'ees ou rajout\'ees ou ramen\'ees par un ordre SQL +\end{multi} + +\begin{multi}[multiple, points=1]{05-SQLCA.H} +Quelle est la bonne syntaxe pour inclure le fichier SQLCA ? +\item INCLUDE SQLCA.H; +\item* EXEC SQL INCLUDE SQLCA.H; +\item SQLCA.H; +\end{multi} + +\begin{multi}[multiple, points=1]{06-SQLCA.H} +O\`u doit-on utiliser la structure sqlca pour connaitre le compte rendu de la commande SQL ex\'ecut\'ee ? +\item* Apr\`es chaque commande SQL +\item Avant chaque commande SQL +\end{multi} + +\begin{multi}[multiple, points=1]{07-WHENEVER} +A quoi sert la commande WHENEVER ? +\item A faire n'importe, quoi n'importe o\`u et n'importe quand +\item* A permettre d'utiliser des directives qui sp\'ecifient le traitement \`a effectuer en cas d'erreur. +\end{multi} + +\begin{multi}[multiple, points=1]{08-WHENEVER} +A quoi correspondent les valeurs possibles du premier param\`etre (type d'erreur) ? +\item* SQLERROR : \'equivalent au test sqlca.sqlcode < 0 +\item SQLWARNING : \'equivalent au test sqlca.sqlcode < 0 +\item* SQLWARNING : \'equivalent au test sqlca.sqlwarn[0] = 'W' +\item* NOT FOUND : sqlca.sqlcode = +1403 +\item NOT FOUND : on ne trouve pas le compte rendu d'ex\'ecution de la commande SQL +\end{multi} + +\begin{multi}[multiple, points=1]{09-WHENEVER} +A quoi correspond la valeur du deuxi\`eme param\`etre (type d'action) ? +\item* STOP : arr\`ete le programme avec ROLLBACK +\item STOP : arr\`ete la commande SQL +\item* CONTINUE : continue le traitement m\^eme si la commande SQL est en erreur +\item* GOTO passe le contr\^ole du programme au label suivant cette valeur +\item GOTO passe le contr\^ole du programme au sous-programme GoKu +\item* DO appelle une fonction qui suit cette valeur +\end{multi} + +\begin{multi}[multiple, points=1]{10-Indicateur} +A quoi sert un indicateur de variables ? +\item\`a indiquer la variable +\item* \`a pour travailler avec les valeurs NULL +\item* \`a connaitre lse valeurs particuil\`eres des variables +\end{multi} + +\begin{multi}[multiple, points=1]{11-Indicateur} +Un indicateur de variable h\^ote doit ? +\item* \^etre du tye short +\item un indic +\item* \^etre pr\'ec\'ed\'e de ':' lorsqu'il est utilis\'e dans une requ\^ete SQL +\item* \^etre pr\'ec\'ed\'e par une variable h\^ote dans un ordre SQL +\end{multi} + +\begin{multi}[points=1]{12-Indicateur} +Quelles sont les bonnes associations valeur - explication pour une variable indicateur ? +\item 0 - pas d'enregistrement en base +\item* 0 - pas de probl\`emes +\item -1 - la valeur de la variable h\^ote associ\'e est NOT NULL +\item* -1 - la valeur de la variable h\^ote associ\'e est NULL +\item >0 - la valeur retourn\'ee dans la variable h\^ote est enti\`ere +\item* >0 - la valeur retourn\'ee dans la variable h\^ote est tronqu\'ee +\end{multi} + +\begin{multi}[multiple, points=1]{13-Indicateur} +Quelles sont les instructions utilisant correctement l'indicateur indic-var ? +\item* EXEC SQL SELECT nomproduit INTO :varNomPdt:indic-var FROM Tproduit WHERE noproduit = 'P001'; +\item EXEC SQL SELECT nomproduit INTO :indic-var FROM Tproduit WHERE noproduit = 'P001'; +\item* IF (indic-var == -1){varNomPdt = ''} +\item* EXEC SQL UPDATE Tproduit SET nomproduit = :varNomPdt INDICATOR :indic-var; +\item EXEC SQL UPDATE Tproduit SET nomproduit = :varNomPdt:indic-var; +\end{multi} + +\begin{multi}[multiple, points=1]{14-Curseur} +Quelle est la bonne d\'eclaration d'un curseur ? +\item EXEC SQL DECLARE nomCurs IS SELECT nomproduit FROM Tproduit; +\item* EXEC SQL DECLARE nomCurs FOR SELECT nomproduit FROM Tproduit; +\end{multi} + +\begin{multi}[multiple, points=1]{15-Curseur} +Quelle est la bonne instruction d'ex\'ecution d'un curseur ? +\item EXEC SQL EXECUTE nomCurs; +\item* EXEC SQL OPEN nomCurs; +\end{multi} + +\begin{multi}[multiple, points=1]{16-Curseur} +Quelle est la bonne instruction de lecture d'une ligne courante d'un curseur ? +\item* EXEC SQL FETCH nomCurs INTO :varNomPdt:indic-var; +\item* EXEC SQL FETCH nomCurs INTO :varNomPdt; +\end{multi} + +\begin{multi}[multiple, points=1]{17-Curseur} +Comment sait-on qu'il n'y a plus de lignes dans la table du r\'esultat du curseur ? +\item sqlcode = 1401; +\item* sqlca.sqlcode = 1403; +\item nomCurs\%NOT FOUND; +\end{multi} + +\begin{multi}[multiple, points=1]{18-Curseur} +Que retourne la lecture d'un curseur ferm\'e ? +\item la derni\`ere ligne lue du curseur +\item* une erreur; +\end{multi} + +\begin{multi}[multiple, points=1]{19-Curseur} +Qu'est ce qu'implique l'ouverture d'un curseur ? +\item* la cr\'eation de la table contenant le r\'esultat de la requ\^ete associ\'ee \`a ce curseur +\item la lecture de sa premi\`ere ligne +\end{multi} + +\begin{multi}[multiple, points=1]{20-Curseur} +Un curseur peut retourner combien de ligne ? +\item* 0 +\item* 1 +\item* >1 +\end{multi} + +\end{quiz} +\end{document} + +