Les curseurs
Un curseur est un élément qui permet de stocker le résultat d’une requête contenant plusieurs lignes.
Il faut le déclarer dans la section déclarative.
Il faut l’ouvrir par OPEN, l’exécuter par FETCH et le fermer par CLOSE.
Dans l’exemple le pays recherché est passé en paramètre au curseur : CURSOR C_FILMS_PAR_PAYS (PAYSR IN VARCHAR2) IS.
PAYSR est renseigné lors de l’OPEN CURSOR avec la variable qui contient le libellé du pays : OPEN C_FILMS_PAR_PAYS(pays_recherche).
Exemple avec la même requête que précédemment :
DECLARE
-- déclaration du curseur C_FILMS_PAR_PAYS
CURSOR C_FILMS_PAR_PAYS (PAYSR IN VARCHAR2) IS
SELECT FILM.TITRE, FILM.DATE_SORTIE,
REAL.NOM||' '||REAL.PRENOM REALISATEUR, ACTEUR.NOM NOM,
ACTEUR.PRENOM PRENOM, ACTEUR.DATE_NAISSANCE,
ACTEUR.NB_FILM,STAT.BUDGET, STAT.NB_ENTREE_FRANCE ENTREES
FROM FILM FILM, REALISATEUR REAL, CASTING CAST,
ACTEUR ACTEUR, STATISTIQUE STAT, PAYS PAYS
WHERE
FILM.IDENT_REALISATEUR = REAL.IDENT_REALISATEUR AND
FILM.IDENT_FILM = CAST.IDENT_FILM AND
FILM.IDENT_FILM = STAT.IDENT_FILM AND
CAST.IDENT_ACTEUR = ACTEUR.IDENT_ACTEUR AND
PAYS.IDENT_PAYS =...