Bonjour,

J'ai un curseur explicite dont la requête exécutée directement me retourne 2 enregistrements. Mais le curseur ne me retourne rien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
OPEN cur_niv2;
LOOP
    FETCH cur_niv2 BULK COLLECT INTO vDonneeNiv2;
    IF cur_niv2%NOTFOUND THEN
         => log( 'NOTFOUND ' || cur_niv2%ROWCOUNT);
    ELSE
         => log( 'FOUND ' || cur_niv2%ROWCOUNT);
    END IF;
 
    EXIT WHEN cur_niv2%NOTFOUND;
 
    FOR cpt_niv2 IN vDonneeNiv2.FIRST..vDonneeNiv2.LAST
    LOOP
        => log(vDonneeNiv2(cpt_niv2).ReferenceBoutEnBout);
    END LOOP;
END LOOP;
CLOSE cur_niv2;
Et la log (que j'ai tronquée dans le code ici) donne :
NOTFOUND 2
Je précise que vDonneeNiv2 est de type TABLE OF d'un RECORD.
Et la définition du record correspond bien au curseur.

Je trouve ça bizarre et je n'ai pas d'explications.
Pouvez-vous m'aider SVP