Thread: Error message documentation ?
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
> 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