Bonjour,
Lors de l'execution d'une Proc_stock, j'obtient une erreur Oracle ORA-01555 (RBS trop petit) au moment où mon curseur effectue un fetch :
OPEN curStatut;
loop
FETCH curStatut into v_Statut;
EXIT WHEN curStatut%NOTFOUND;
C'est bizarre car ce curseur est appelé plusieurs fois via une boucle (à chaque fois j'ouvre le curseur, je le fetche, j'execute mon programme et je le ferme). Or il ne plante qu'au bout d'un certain nombre d'utilisation. Pourtant le nombre de lignes ramenées à chaque ouverture est sensilement le même.
Mes questions :
- Le curseur n'est-il pas complètement vidée de la mémoire au moment du 'close' ? Oracle ne sait-il pas gérer correctement la mémoire ?
- Je ne peux pas minimiser le nombre de lignes ramenées par mon curseur. Existe-t-il une autre méthode pour en limiter la taille ?
Toute vos infos sont appréciées.
Merci
P.S : Oracle 8.0.6
Partager