Bonjour à tous,![]()
alors tout d'abord mon environnement de travail :
* bd Oracle 8i,
* toad 9.0.1.8 pour attaquer la bd.
J'ai une procédure PL/SQL dans laquelle j'ai déclaré le curseur suivant :
Je veux ensuite boucler sur le curseur + boucler sur chaque champ day du curseur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 CURSOR c1 IS SELECT code,day1,day2,day3,day4,day5,day6,day7, FROM t1 GROUP BY code,day1,day2,day3,day4,day5,day6,day7;
Cela ne fonctionne bien sûr pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 for d in 1..7 loop v_a_Day := 'c1.day' || to_char(d); if (v_a_day is not null) then for i in 1..length(v_a_Day) loop if (upper(substr(v_a_Day,i,3))='XXX') then v_compteur_XXX:=v_compteur_XXX+1; end if; if (upper(substr(v_a_Day,i,3))='YYY') then v_compteur_YYY:=v_compteur_YYY+1; end if; end loop; end if; end loop;car Oracle n'interprète pas la valeur de ma variable v_a_day comme moncurseur.monchamp mais comme une chaine de caractères. Quelqu'un saurait il comment dire à Oracle de prendre le contenu de v_a_day comme une variable et non comme une chaine de caractères?
![]()
Merci
Partager