Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re: PL/SQL Functions.

by jorg (Friar)
on May 29, 2001 at 16:12 UTC ( [id://83897]=note: print w/replies, xml ) Need Help??


in reply to PL/SQL Functions.

A while back when i was doing similar stuff i found a few perl-dbi-dbd:oracle code snippets here that were very usefull to me. I believe the one you're after is similar to this :
use strict; use DBI; my $dbh = DBI->connect( 'dbi:Oracle:orcl', 'jeffrey', 'jeffspassword', { RaiseError => 1, AutoCommit => 0 } ) || die "Database connection not made: $DBI::errstr"; my $rv; #holds +the return value from Oracle stored procedure eval { my $func = $dbh->prepare(q{ BEGIN :rv := jwb_function( parameter1_in => :parameter1 ); END; }); $func->bind_param(":parameter1", 'Bunce'); $func->bind_param_inout(":rv", \$rv, 6); $func->execute; $dbh->commit; }; if( $@ ) { warn "Execution of stored procedure failed: $DBI::errstr\n"; $dbh->rollback; } print "Execution of stored procedure returned $rv\n"; $dbh->disconne +ct;
The binding of out vars happens here : $func->bind_param_inout(":rv", \$rv, 6);. The DBI assigns the return value to a reference ($rv). If i remember correctly, '6' is the number of bytes to use or the datatype (not sure on this, check the docs)

Jorg

"Do or do not, there is no try" -- Yoda

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://83897]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others surveying the Monastery: (9)
As of 2024-04-18 20:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found