Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/02/2007, 00h31   #1
Invité de passage
 
Inscription : juin 2003
Messages : 5
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 5
Points : 0
Points : 0
Envoyer un message via ICQ à grishester Envoyer un message via AIM à grishester Envoyer un message via MSN à grishester Envoyer un message via Yahoo à grishester
Par défaut 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 !!!
grishester est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2007, 06h30   #2
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
enléve call tout simplement
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h43.


 
 
 
 
Partenaires

Hébergement Web