> Hello folks:
>
> I am using the perl DBI to connect to a postgreSQL database and thought it
> would be a good idea to anticipate and handle errors returned by
postgreSQL
> in my perl code so the end users don't have to deal with mysterious
> error messages
> they don't understand. "Programming the Perl DBI" suggests using
> $h->errstr() but
> says that the message is determined by the underlying database.
While I agree that formal documentation would be nice (and time
consuming), this information is readily available in
"~postgres/include/libpq-fe.h". There are some explanations too. I think
it took a bit of experimentation on my part since SELECT and non-SELECT
commands return slightly different status codes. I think it is unreasonable
to assume the DBI would document postgresql return values. The DBI is
database-independant. Since there is no error-code specification for
databases (that I know of), the DBI cannot possibly define error codes for
every possible database. However, this would fit perfectly into the perldoc
for the DBD module that interfaces the DBI to the specific database library.
The DBD::Pg module identifies that it returns status codes directly from
libpq ... these are defined in the include file previously specified.
Shane