The libecpg library primarily
contains "hidden" functions that are
used to implement the functionality expressed by the embedded SQL
commands. But there are some functions that can usefully be
called directly. Note that this makes your code unportable.

ECPGdebug(int on, FILE *stream) turns on debug logging
if called with the first argument non-zero. Debug logging is
done on stream. The log
contains all SQL
statements with all the input variables inserted, and the
results from the PostgreSQL
server. This can be very useful when searching for errors in
your SQL statements.

Note: On Windows, if the ecpg libraries and an application
are compiled with different flags, this function call
will crash the application because the internal
representation of the FILE
pointers differ. Specifically,
multithreaded/single-threaded, release/debug, and
static/dynamic flags should be the same for the library
and all applications using that library.

ECPGstatus(int lineno, const char* connection_name) returns true if
you are connected to a database and false if not. connection_name can be NULL if a single connection is being used.