Bonjour à tous,
Je souhaite récupérer dans une variable la concaténation de toutes les colonnes d'un curseur dans une boucle for.
Les colonnes de mes tables sont amenées à changer, je construis donc au préalable ma requête (la dessus je m'en sors, j'ai simplifié dans le code ci-dessous).
Mais c'est lorsque je veux que ma variable requête soit interpréter afin de mettre la concaténation dans une variable concat_col que je bloque.
J'ai essayé pas mal de chose avec un "execute immediate" et un select bidon. Mais même dans ce cas je rencontre l'erreur :
ORA-00904: "CURSEUR"."name_col2_tab2": invalid identifier
Comme si le curseur était hors context.
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 declare requete VARCHAR2(2000); concat_col VARCHAR2(2000); begin requete := 'curseur.name_col1_tab1 || '':'' || curseur.name_col2_tab1 || '':'' || curseur.name_col1_tab2 || '':'' || curseur.name_col2_tab2'; for curseur in (select * from table1, table2) loop EXECUTE IMMEDIATE requete into concat_col; --?????? ligne problématique end loop; end;
Je ne sais pas si c'est très clair, n'hésitez pas à me demander des précisions.
Merci pour votre aide, je n'ai plus d'idée.
Partager