salut à tous,

J'ai creer un procedure dans lequel il y a une fonction qui test si c'est une valeur numerique. J'execute le code suivant :

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
16
17
18
19
20
21
 
CREATE OR REPLACE PACKAGE Test AS
   FUNCTION Is_Numeric (valeur IN VARCHAR2) RETURN NUMBER;
END Test;
/
 
 
CREATE OR REPLACE PACKAGE BODY Test AS
 
FUNCTION Is_Numeric (valeur IN VARCHAR2)
   RETURN NUMBER IS
   -- Retourne 1 si valeur est numérique, 0 sinon
      i NUMBER;
   BEGIN
      i := TO_NUMBER(valeur);
	  RETURN 1;
   EXCEPTION
       WHEN OTHERS THEN RETURN 0;
   END Is_Numeric;
END Test;
/
Le corp du package a été correctement execute. Ensuite je veux tester en executant la commande suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
EXECUTE Test.Is_Numeric (1);
Et malheureusement la commande ne s'execute pas. Un message d'erreur est affiché :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
ORA-06550: Ligne 1, colonne 7 :
PLS-00221: 'IS_NUMERIC' n'est pas une procédure ou est indéfini
ORA-06550: Ligne 1, colonne 7 :
PL/SQL: Statement ignored
Auriez vous une idée pourquoi il n'arrive pas à executer ma commande?

Je vous remercie d'avance