-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160
> Should a call to prepare() return an Active statement? (i.e. $sth->{Active}
> == 1)
>
> This appears to be the behaviour of DBD::Sybase, but not DBD::Pg
I don't think there is a canonical answer to that, but I can say that
DBD::Pg in most cases will not even talk to the server until the first
execute() after the prepare(), so it not being Active seems a sane
interpretation.
The docs for DBI say:
The "Active" attribute is true if the handle object is "active".
This is rarely used in applications. The exact meaning of active
is somewhat vague at the moment. For a database handle it typically
means that the handle is connected to a database ("$dbh->disconnect"
sets "Active" off). For a statement handle it typically means that
the handle is a "SELECT" that may have more data to fetch. (Fetching
all the data or calling "$sth->finish" sets "Active" off.)
The docs for DBD::Pg:
Indicates if a handle is active or not. For database handles, this
indicates if the database has been disconnected or not. For statement
handles, it indicates if all the data has been fetched yet or not.
Use of this attribute is not encouraged.
As far as I can tell, DBD::Sybase makes not effort to do anything special
regarding that attribute.
In short, I would not rely upon it, especially across DBDs.
- --
Greg Sabino Mullane [email protected]
End Point Corporation http://www.endpoint.com/
PGP Key: 0x14964AC8 201609291928
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8
-----BEGIN PGP SIGNATURE-----
iEYEAREDAAYFAlfto9cACgkQvJuQZxSWSsgozgCg4UJ6udKs/B/p36bjLd47/5op
XYAAoJH6aQ3K20AcyfEwkBxUD3j55ruv
=nMi8
-----END PGP SIGNATURE-----