这些函数控制许多libpq杂项行为的细节。
PQsetErrorVerbosity
决定 PQerrorMessage
和 PQresultErrorMessage
返回的信息的冗余程度。
typedef enum { PQERRORS_TERSE, PQERRORS_DEFAULT, PQERRORS_VERBOSE } PGVerbosity; PGVerbosity PQsetErrorVerbosity(PGconn *conn, PGVerbosity verbosity);
PQsetErrorVerbosity
设置冗余模式,返回连接的前一个设置。
在 TERSE 模式下,返回的消息只包括严重性,主信息,以及位置信息;
这些东西通常只有一行。缺省模式生成的消息包括上面的信息加上任何细节,提示,或者环境字段(这些可能跨越几行)。
VERBOSE 模式包括所有可以获得的字段。修改冗余模式不会影响我们能从已经存在的 PGresult 对象中获取的信息,
只有随后创建的 PGresult 对象才受到影响。
PQtrace
打开对前端/服务器通讯的跟踪,把调试信息输出到一个文件流里。
void PQtrace(PGconn *conn FILE *stream);
注意: 在 Windows 里,如果 libpq 库和应用使用了不同的标志编译, 那么这个函数调用会导致应用崩溃,因为 FILE 的内部表现形式是不一样的。 特别是多线程/单线程,Release/debug,以及静态/动态标志应该是库和所有使用库的应用都一致。
PQuntrace
关闭PQtrace
打开的跟踪。
void PQuntrace(PGconn *conn);