pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
由 Bruce Momjian 编写 (<pgman@candle.pha.pa.us>), 最后更新于 2000-03-30
pgeasy 让你能够干净地接口到 libpq 库, 更像是 4GL 的 SQL 接口。
它由一组封装了 libpq 功能的简化 C 函数组成。 这些函数是:
PGresult *doquery(char *query);
PGconn *connectdb(char *options);
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 允许你取回字段的 NULL 状态,方法是在每个结果指针之后传递一个 int*, 字段为空时它返回真或假。 你总是可以在 doquery 返回的 PGresult 指针上 使用 libpq 函数。 reset_fetch 把取回操作重置回开头。
get_result、 set_result 和 unset_result 允许你同时处理多个结果集。
源代码目录中有各种各样的 示例程序。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。