Thread: Error message documentation ?

Error message documentation ?

From
Bill Kurland
Date:
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.

I've checked a couple of PostgreSQL books and the online docs as well
as the web but haven't found any kind of list of the possibilities. It
would
seem that if it were useful to know them someone would have documented it,
but I haven't found any references to such a list.

Does such a list exist?

Thanks

--

Bill Kurland
Shakespeare & Co.


"There is no Modesty--No attention to one another. They talk very loud,
very fast,and alltogether.If they ask you a Question, before you can
utter 3 words of your Answer, they will break out upon you, again--and
talk away"
--John Adams, on New Yorkers



Re: Error message documentation ?

From
S Dawalt
Date:
> 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