Salut
J'ai un problème avec les curseurs lorsque la condition utilise le comparateurIN
voici la déclaration de mon curseur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
cursor crs(where_st VARCHAR2) is SELECT lib_doc from document where typ_doc in  where_st;
voici le code utilisé pour appeler le curseur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
var_where_stm:='(''liv'',''cd'')';
DBMS_OUTPUT.PUT_LINE('var_where_stm='||var_where_stm);
FOR V_STR IN crs(var_where_stm) 
    LOOP   
       DBMS_OUTPUT.PUT_LINE('resultat='||V_STR.lib_doc);
    end loop;
La chose bizarre est que la valeur var_where_stm affiché est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
var_where_stm=('liv','cd')
et lorsque je remplace le parametre where_st dans la déclaration du curseur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
cursor crs(where_st VARCHAR2) is SELECT lib_doc from document where typ_doc in  ('liv','cd');
le curseur dans ce cas fonctionne bien!!