Problème Bulk collect et Oracle 8
Bonjour.
J'ai la requête suivante qui marche sans problème :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| DECLARE
TYPE Tab1 IS TABLE OF taches_p.nom_tache%TYPE;
v$tab Tab1;
BEGIN
SELECT nom_tache BULK COLLECT INTO v$tab FROM taches_p;
FOR i IN v$tab.FIRST .. v$tab.LAST
LOOP
dbms_output.put_line(v$tab(i));
END LOOP;
END; |
Mais celle-là elle ne marche pas :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| -- Created on 12/02/2008 by IRAS
DECLARE
TYPE Tab1 IS TABLE OF taches_p.nom_tache%TYPE;
v$tab Tab1;
req VARCHAR2(128);
BEGIN
req := 'SELECT nom_tache BULK COLLECT INTO v$tab FROM taches_p';
execute immediate req bulk collect into v$tab;
FOR i IN v$tab.FIRST .. v$tab.LAST
LOOP
dbms_output.put_line(v$tab(i));
END LOOP;
END; |
J'utilise Oracle 8 pour information. J'ai lancé la deuxième requête sous Oracle 9 et ça a marché. J'en conclus donc que c'est un problème de version.
Mon problème c'est que je ne peux pas paramètrer le select dans la première requête.
Quelqu'un connaîtrait-il une solution ?
Merci.