DBD::mysql and mysql_use_result

Alan Burlison <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.general,gmane.comp.db.mysql.perl
Message-ID <[email protected]>
I want to use the DBD::mysql 'mysql_use_result' attribute to make the 
driver use mysql_use_result instead of mysql_store_result, and I want to 
do it for all the queries I'm submitting against the database.  Having 
to set it on each and every statement handle that I generate is a real 
pain, I'd like to be able to set the default on the database handle and 
have it inherited by all the statement handles that are generated from 
the database handle.

I'm not sure of the best way to go about this, there are two options:

1. Store the value in the DBH and copy into the STH when the STH is 
created, unless the STD constructor is given an explicit value.

2. Store the value in the DBH and each time the STH is executed, look up 
the value in the parent DBH if the STH doesn't have an explicit value.

e.g. given:

$dbh->{mysql_use_result} = 1;
my $sth = $dbh->prepare(...);
$dbh->{mysql_use_result} = 0;

under option 1, when $sth is executed the value of the mysql_use_result 
attribute will be 1, and under option 2 it will be 0.

One other question - how do I get the parent DBH from a STH from within 
the XS code for a DBD driver?

-- 
Alan Burlison
--
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.