Bonsoir,

j'ai codé cette fonction toute bête pour effectuer un test :

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
 
CREATE OR REPLACE FUNCTION est_present_ml(p_chaine IN VARCHAR2)
  RETURN VARCHAR2
IS 
  reponse VARCHAR2(255);
 
BEGIN
 
  reponse := p_chaine;
  dbms_output.put_line(p_chaine);
 
  RETURN(reponse);
 
END;
/
Je la déclenche par l'ordre suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT est_present_ml('Trois') FROM dual;
Et au final, dans la console DBMS, j'obtiens ceci :

Alors que je m'attendais à trouver cela :

Pour la fonction est-elle exécutée 2 fois au lieu d'une ???

Merci d'avance pour votre aide.

Cordialement.