Comment invoquer un Stored Procedure depuis une fonction ?
Bonjour tout le monde, je suis novice en Oracle et j'ai un gros doute sur le sujet suivant ; j'espère que qulqu'un pourra m'aider.
Voilà, j'ai le SP suivant, tout bête:
Code:
1 2 3 4 5 6 7 8 9 10 11
| CREATE OR REPLACE PROCEDURE "SUN01"."SP_PRUEBA1"
(v_campo1 OUT tabla1.campo1%TYPE,
v_campo2 OUT tabla1.campo2%TYPE,
v_campo3 OUT tabla1.campo3%TYPE)
IS
BEGIN
select campo1, campo2, campo3
into v_campo1, v_campo2, v_campo3
from tabla1
where campo3=1;
END sp_prueba1; |
Et je veux l'appeler depuis une fonction.
J'ai essayé la fonction suivante:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| CREATE OR REPLACE FUNCTION "SUN01"."fn_exec_sp_prueba1" (MYARG IN OUT NOCOPY NUMBER)
RETURN NUMBER
IS
NUMVAR number := 0;
n1 number;
n2 char(5);
n3 number;
// moncurseur cursor;
BEGIN
call sp_prueba1(n1, n2, n3);
RETURN NUMVAR ;
END; |
Mais ça ne veut pas marcher ... l'erreur est la suivante:
Code:
1 2 3 4 5
| Message
PLS-00103: Encountered the symbol "SP_PRUEBA1" when expecting one of the following:
:= . ( @ % ;
The symbol ":=" was substituted for "SP_PRUEBA1" to continue. |
J'ai passé toute la journée là-dessus sans savoir comment faire ... merci de votre aide !!!