I have implemented a similar capability
for DBD::Teradata to access some bulk
load/unload functions, tho I used driver-specific
functions to register callbacks 
eg, $dbh->func(tdat_*) type of thing, and it
was strictly for Perl subs.

Another possibly related idea I bounced off Mssr.
Bunce some time ago was support for a 
"producer-consumer" interface in DBI, wherein
you create several stmt handles, and then
register them with each other eg,

$sth1->set_producer($sth2)

so the results from $sth2 are fed directly to $sth1
for param results. I suspect there might be
some performance gains by avoiding pushing
the result sets up to the app layer, only to push
it back into the DBI layer again, esp. if
array binding was available at both producer
and consumer.

Dean Arnold

> On Mon, 18 Feb 2002, Sterin, Ilya wrote:
> 
> > Hmmm, how would you pass that function to execute.  I don't believe the dbi
> > interface allows that right now.  Maybe func() will have to do.  Unless you
> > can fake a bind var as an actual function reference.
> 
> It wouldn't be a perl callback - just a C one... Anyway for now I'm just
> doing the "gather results" thing, unless anyone has any brighter ideas.
> 
> -- 
> <!-- Matt -->
> <:->Get a smart net</:->
> 
> 

-- 


Reply via email to