Re: Is there public API to fetch errcode?

David G. Johnston <david.g.johnston@gmail.com>

From: "David G. Johnston" <david.g.johnston@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Sergey Fukanchik <s.fukanchik@postgrespro.ru>, pgsql-hackers@postgresql.org
Date: 2025-10-12T17:37:06Z
Lists: pgsql-hackers
On Sun, Oct 12, 2025 at 1:27 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:

> Sergey Fukanchik <s.fukanchik@postgrespro.ru> writes:
> > Does libpq have an API to extract this code?
>
> PQresultErrorField(res, PG_DIAG_SQLSTATE) should do, no?
>
>
I believe the call flow is the following - no "res"/result is ever
constructed:

PGconn *PQconnectdb(const char *conninfo);
ConnStatusType PQstatus(const PGconn *conn);
// Connection_Bad
char *PQerrorMessage(const PGconn *conn);
// Obtains the error message; but there seems to be no equivalent of
PQresultErrorField (e.g. PQconnErrorField) to obtain the SQLState field
component thereof

David J.