PostgreSQL7.0手册-接口-56. libpgeasy - 简化了的 C 绑定库
作者:由 Bruce Momjian (pgman@candle.pha.pa.us)写作,最后更新为 2000-03-30.
pgeasy 令你可以干净地与 libpq 库交互,非常象 4GL SQL 接口.
它由一系列简化了的 C 函数组成,这些 C 函数封装了 libpq 的函数.这些函数是:
PGresult *doquery(char *query);
PGconn *connectdb();
void disconnectdb();
int fetch(void *param,...);
int fetchwithnulls(void *param,...);
void reset_fetch();
void on_error_continue();
void on_error_stop();
PGresult *get_result();
void set_result(PGresult *newres);
void unset_result(PGresult *oldres);
许多函数返回一个结构或者一个值,因此你可以对该结果做更多地处理.
基本上说,你用 connectdb 与数据库联接,用 doquery 发出你的查询,用 fetch 抓取结果,用 disconnectdb 结束联接.
对于 select 查询,fetch 允许你把指针作为参数传递,并且在返回时对这些变量填充用你打开的游标抓取的二进制数据.如果你在一种不同体系的系统上运行 pgeasy,这些二进制游标是不能用的.如果你传递一个 NULL 指针参数,该列被略过.fetchwithnulls 允许你通过在每个结果指针后面传递一个 int* 来建索该域的 NULL 状态,这个参数根据该域是否为空返回真(true)或假(false).你可以对 doquery 返回的 PGresult 指针使用 libpq 的函数. reset_fetch 将抓取恢复到开头.
get_result,set_result,和 unset_result 允许你同时操作多个结果集.
在源文件目录里有多种多样的演示程序.