Re: Problem when calling stored procedure
"Pierre Hainard" <[email protected]> Sun, 11 Nov 2007 15:02:53 +0100
| Newsgroups | gmane.comp.db.mysql.perl |
|---|---|
| Message-ID | <002201c8246b$912809c0$0201a8c0@papa> |
Hi I have the problem that with my $sth = $dbh->prepare($procedure); the two parameters are passed to $para1 and $para2 : procedure=CALL p1(10,12) is passed to MySql and with my $sth = $dbh->prepare($linproc[0]); the two parameters are not passed to $para1 and $para2 : linproc=CALL p1($para1,$para2) is passed to MySql and perl interpretor gives an error passing parameters in field list C:\Documents and Settings\papse\My Documents\AERP\DBI>perl DBI-5.pl procedure=CALL p1(10,12) DBD::mysql::st execute failed: Champ '$para1' inconnu dans field list at DBI-5.p l line 44. DBD::mysql::st execute failed: Champ '$para1' inconnu dans field list at DBI-5.p l line 44. linproc=CALL p1($para1,$para2) NB inconnu translated is not know Thank you for help Meilleures salutations Pierre Hainard Chalet 15 2300 La Chaux de Fonds [email protected] ----- Original Message ----- From: "Wagner, Chris (GEAE, CBTS)" <[email protected]> To: "Pierre Hainard" <[email protected]> Cc: <[email protected]> Sent: Friday, November 09, 2007 3:41 PM Subject: Re: Problem when calling stored procedure > Hi. In the second one ur passing an anonymous hash to the prepare() > function. It needs to be a scalar like in ur first example. So just > get rid of the {}'s and it should work assuming $procedure eq > $linproc[0]. > > Pierre Hainard wrote: >> # Calling the procedure >> $para1 = 10;$para2 = 12; >> my $procedure = "CALL p1($para1,$para2)"; >> >> #this one does work >> my $sth = $dbh->prepare($procedure); >> #this one does not work why ?? >> #my $sth = $dbh->prepare({$linproc[0]}); >> $sth->execute(); > > > > > > -- > Chris Wagner > CBTS > GE Aircraft Engines > [email protected] -- MySQL Perl Mailing List For list archives: http://lists.mysql.com/perl To unsubscribe: http://lists.mysql.com/[email protected]