Executer fonction oracle et récupérer résultat depuis perl (DBI)

Executer fonction oracle et récupérer résultat depuis perl (DBI) - Perl - Programmation

Marsh Posté le 12-04-2010 à 17:49:36    

Bonjour à tous,
 
Je n'arrive pas à lancer une fonction sur une base de donnée oracle et à récupérer correctement le résultat.
Quelqu'un peut m'aider ?
 
Fonction Oracle
(iType IN VARCHAR2, iNberMaxOfEvents IN NUMBER, iDebug IN NUMBER default 0) RETURN NUMBER
IS
BEGIN
  RETURN (5);
END FN_TESTPERL;
 
SCRIPT PERL
my $Query="FN_TESTPERL('REL',1)";
my $sth = $vgsDbSession->prepare($Query)
 or die "Impossible de créer le statement: " . $vgsDbSession->errstr;
 
#Execute de la query
$sth->execute()
 or die "Impossible d'exécuter la requête: " . $sth->errstr;
 
 
J'ai essayer de plusieurs façon et je n'y arrive pas.
Merci
François

Reply

Marsh Posté le 12-04-2010 à 17:49:36   

Reply

Marsh Posté le 13-04-2010 à 09:41:34    

Please...

Reply

Marsh Posté le 13-04-2010 à 15:32:22    

Tu t'es inspiré des techniques explicitées ici: http://search.cpan.org/~pythian/DB [...] L_Examples ?
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 14-04-2010 à 23:27:33    

En fait dans mes souvenirs, tu peux aussi utiliser la syntaxe "select xxx from dual;"
 
donc en théorie :

Code :
  1. my $Query="select FN_TESTPERL('REL',1) res_fonction from dual;";


 
et en parcourant le résultat comme tout autre requête SQL devrait suffire. Par contre, je ne sais pas/plus, mais je pense que oui, si on peut utiliser les "bind values" pour faire un prepare "propre" (du style prepare("select FN_TEST_PERL(?,?) res_fonction from dual;" ) ) et faire des "$sth->execute($param1,$param2);" )
 
Bon courage

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed