libecpg 库主要包含用于实现嵌入式 SQL
命令所表达功能的“隐藏”函数。但也有一些函数可以直接
调用并且很有用。注意,这会使你的代码失去可移植性。
ECPGdebug(int 在第一个参数
非零时开启调试日志。调试日志会写到
on, FILE
*stream)stream。日志中包含插入了所有输入
变量的全部 SQL 语句,以及来自
PostgreSQL 服务器的结果。这对排查
SQL 语句中的错误非常有用。
在 Windows 上,如果 ecpg 库与应用
程序使用了不同的标志编译,对该函数的调用会使应用程序崩溃,
因为 FILE 指针的内部表示不同。具体来说,
库和所有使用它的应用程序的多线程/单线程、release/debug 以及
静态/动态标志都应当保持一致。
ECPGget_PGconn(const char * 返回由给定名称标识的库数据库连接句柄。
如果 connection_name)
connection_name 被设置为
NULL,则返回当前的连接句柄。如果无法标识
任何连接句柄,该函数返回 NULL。必要时,
返回的连接句柄可用于调用 libpq
中的任何其他函数。
直接用 libpq 的例程去操纵 ecpg 产生的数据库连接句柄是一种 不好的做法。
ECPGtransactionStatus(const char *
返回由 connection_name)connection_name 标识的给定连接的当前事务状态。
有关返回的状态码的详细信息,请参见 Section 32.2
以及 libpq 的 PQtransactionStatus。
ECPGstatus(int
在已连接到数据库时返回真,否则返回假。如果只使用单一连接,
lineno,
const char* connection_name)connection_name 可以为
NULL。