On Mon, Jun 09, 2003 at 01:11:18AM -0400, Rudy Lippan wrote:
> On Fri, 6 Jun 2003, Tim Bunce wrote:
> > On Fri, Jun 06, 2003 at 02:56:12PM -0400, Rudy Lippan wrote:
> > > On Fri, 6 Jun 2003, Tim Bunce wrote:
> > > 
> > > > 
> > > > On a vagely related topic, I think mysql_client_found_rows=1 should
> > > > also be the default.
> > > > 
> > > 
> > > It can be, even in the current version.  There is a compile time option
> > > for it, but I don't think it is documented [This should be fixed, 
> > > though ;) ].
> > > 
> > > >From dbdimp.c:
> > > 
> > > #ifdef MYSQL_DONT_USE_CLIENT_FOUND_ROWS
> > >     unsigned int client_flag = 0;
> > > #else
> > >     unsigned int client_flag = CLIENT_FOUND_ROWS;
> > > #endif
> > > 
> > > Do you want me to flip the default and/or put this in a std attribute?
> > 
> > Both, thanks. Needs to be made clear in the change notes of course.
> 
> I changed DBD::mysql to default to CLIENT_FOUND_ROWS on connect.

Thanks.

> And now I remember why I did not create an attribute for it.  
> CLINET_FOUND_ROWS is a connect-time option, so it does no good to create a
> dbh attribute to change the value.

Ah, but you can now do it via an attribute...

The attribute ref is passed into the dbd_db_login6() function via
Driver.xst so attributes can be handled at connect time.

All mysql connect-time options should be settable via connect-time
attributes (can make them read-only after that by deleting them
from the attribute hash and having STORE croak on them).

> Oh and BTW, this is already
> configurable on the connect string 'mysql_found_rows=1'.

Sure, but the problem is that editing the DSN in generic code is tricky.
(Class::DBI is an example).

Tim.

Reply via email to