Lenteur d'exécution d'une fonction (avec curseur)
Bonjour,
J'ai un comportement bizarre avec une fonction PL/SQL ! Cette fonction contient un curseur :
Code:
1 2
| CURSOR cur_table_1 IS
SELECT * FROM TABLE_1; |
Puis j'ouvre ce curseur pour faire mon traitement :
Code:
1 2 3 4 5
|
FOR v_cur_table_1 IN cur_table_1
LOOP
/*Mon traitement ici...*/
END LOOP; |
Jusque là tout est normal !!! Le problème survient lors de l'ouverture de ce curseur : 30 min pour récupérer les données sachant que la table ne contient que 16 lignes, de plus, lorsque j'exécute la requête SELECT dans un éditeur, elle ne prend même pas 1 seconde pour retourner le résultat !
Petite précision : l'appel de ma fonction se fait à travers un
Code:
SELECT * FROM TABLE ( ma_fonction_PLSQL() );
Quelqu'un peut-il me proposer une solution ? :calim2:
Merci par avance