|
|
@ -101,14 +101,25 @@
|
|
|
|
\begin{enumerate}
|
|
|
|
\begin{enumerate}
|
|
|
|
\item (3 points) Expliquer \`a quoi sert un curseur.
|
|
|
|
\item (3 points) Expliquer \`a quoi sert un curseur.
|
|
|
|
\cache{Un curseur permet de r\'ecup\'erer des donn\'ees multiples.}
|
|
|
|
\cache{Un curseur permet de r\'ecup\'erer des donn\'ees multiples.}
|
|
|
|
\item (5 points) Donner un exemple simple qui n’est pas possible de
|
|
|
|
\item (5 points) Donner un exemple simple de requ\^ete en
|
|
|
|
traiter sans un curseur, et expliquer pourquoi. \cache{Une
|
|
|
|
pr\'ecisant la table utilis\'ee qui n’est pas possible de traiter
|
|
|
|
requete qui renvoie plein de donn\'ees .}
|
|
|
|
sans un curseur, et expliquer pourquoi. \cache{SELECT *
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
from ETUDIANTS
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
WHERE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Une requete qui
|
|
|
|
|
|
|
|
renvoie plein de donn\'ees.}
|
|
|
|
\item (12 points) Donner un exemple simple d'utilisation d'un curseur.
|
|
|
|
\item (12 points) Donner un exemple simple d'utilisation d'un curseur.
|
|
|
|
\newsavebox\dd
|
|
|
|
\newsavebox\dd
|
|
|
|
\begin{lrbox}{\dd}
|
|
|
|
\begin{lrbox}{\dd}
|
|
|
|
\begin{minipage}{\textwidth}
|
|
|
|
\begin{minipage}{\textwidth}
|
|
|
|
\begin{verbatim}
|
|
|
|
\begin{verbatim}
|
|
|
|
|
|
|
|
SET echo off;
|
|
|
|
|
|
|
|
SET verify off;
|
|
|
|
|
|
|
|
SET feedback off;
|
|
|
|
DECLARE
|
|
|
|
DECLARE
|
|
|
|
dnom VARCHAR2(100);
|
|
|
|
dnom VARCHAR2(100);
|
|
|
|
CURSOR C SELECT nom from ETUDIANT WHERE age > 18;
|
|
|
|
CURSOR C SELECT nom from ETUDIANT WHERE age > 18;
|
|
|
@ -124,6 +135,9 @@ CLOSE C;
|
|
|
|
END;
|
|
|
|
END;
|
|
|
|
.
|
|
|
|
.
|
|
|
|
/
|
|
|
|
/
|
|
|
|
|
|
|
|
SET echo on;
|
|
|
|
|
|
|
|
SET verify on;
|
|
|
|
|
|
|
|
SET feedback on;
|
|
|
|
\end{verbatim}
|
|
|
|
\end{verbatim}
|
|
|
|
\end{minipage}
|
|
|
|
\end{minipage}
|
|
|
|
\end{lrbox}
|
|
|
|
\end{lrbox}
|
|
|
|