Appel d'une procédure stocké oracle 9i

cs_djerbino Messages postés 56 Date d'inscription mercredi 5 décembre 2007 Statut Membre Dernière intervention 2 novembre 2009 - 23 avril 2008 à 17:59
cs_djerbino Messages postés 56 Date d'inscription mercredi 5 décembre 2007 Statut Membre Dernière intervention 2 novembre 2009 - 23 avril 2008 à 18:33
bonjour

voici ma procédure stocké avec un curseur



create or replace procedure P_listeproduit (titre in varchar,resultat out varchar2) is

cursor c_listeprod is
select objectif from touhami.cv where metier like titre;



begin
-- Ouverture du curseur
open c_listeprod;

-- Début Boucle
loop
-- Rapatriement de l'enregistrement du curseur
fetch c_listeprod into resultat;

-- Test de fin du curseur avec sortie de boucle
if c_listeprod %notfound then
exit;
end if;

-- Test du curseur
dbms_output.put_line(resultat);

--Fin Boucle
end loop;

-- Fermeture du curseur
close c_listeprod;
end;


dans mon code behind (vb.net) je veu recupérer le contenu de ma procédure (le curseur plus exactement mais il affiche rien

voila mon code behind



Dim MaChaineDeConnection As String "provider MSDAORA ; data source = recrut;User ID=touhami;Password=glmaster;Unicode=True"
Dim MaConnexion As New OleDbConnection(MaChaineDeConnection)
Dim MaRequete As String = "P_listeproduit"
Dim MaCommande As New OleDbCommand(MaRequete, MaConnexion)
MaCommande.CommandType = CommandType.StoredProcedure
Dim MonParametre, MonParametre2 As OleDbParameter
MonParametre = MaCommande.Parameters.Add("titre", OleDbType.VarChar, 100)
MonParametre.Value = "%" & titre.Text & "%"
MonParametre2 = MaCommande.Parameters.Add("resultat", OleDbType.VarChar, 20)

MonParametre2.Direction = ParameterDirection.Output








MaConnexion.Open()

Dim myReader As OleDbDataReader = MaCommande.ExecuteReader()

Response.Write(MonParametre.Value)


merci vraiment pour votre aide

1 réponse

cs_djerbino Messages postés 56 Date d'inscription mercredi 5 décembre 2007 Statut Membre Dernière intervention 2 novembre 2009
23 avril 2008 à 18:33
ma procédure etait défini ainsi puisque select * n'est pas supporté par les curseur donc j'ai utilisé les rowtype
mai que doit-je faire pour appeler cette procédure

create or replace procedure recherche_simple_sans_ville
(
titre IN varchar,resultat OUT cv%Rowtype

)
is

BEGIN
SELECT * INTO resultat FROM touhami.cv
WHERE metier LIKE titre ;
end;
0
Rejoignez-nous