Pour mieux expliquer, j'ai 2 curseurs dans mon programme :
dans la table artg_renouv_tar, les colonnes vont actuellement de Z1 à Z19, mais le système peut etre modifier, ce qui explique le second curseur. J'aimerais donc pouvoir récupérer la valeur Z voulue en utilisant les column_name trouver sans passer par des montagnes de IF..END IF ou des CASE, j'ai déjà essayer avec des executes immédiates mais j'obtiens rien (peut être que je l'utilise mal).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 CURSOR cr_renouv IS SELECT * FROM artg_renouv_tar ORDER BY id_num_renouv_tar; rw_renouv cr_renouv%ROWTYPE; CURSOR cr_z IS SELECT column_name FROM user_tab_columns WHERE table_name ='ARTG_RENOUV_TAR' AND column_name LIKE 'Z%' ORDER BY column_name; rw_z cr_z%ROWTYPE;
Please, Help !!
Partager