# 第 34 章 libpq - C 库

目录

34.1.数据库连接控制函数

34.1.1.连接字符串

34.1.2.参数关键词

34.2.连接状态功能

34.3.命令执行函数

34.3.1.主要功能

34.3.2.检索查询结果信息

34.3.3.检索其他结果信息

34.3.4.转义字符串以包含在 SQL 命令中

34.4.异步命令处理

34.5.流水线模式

34.5.1.使用管道模式

34.5.2.流水线模式相关功能

34.5.3.何时使用管道模式

34.6.逐行检索查询结果

34.7.取消正在进行的查询

34.8.快速路径接口

34.9.异步通知

34.10.与相关的功能复制命令

34.10.1.发送功能复制数据

34.10.2.接收函数复制数据

34.10.3.过时的功能复制

34.11.控制功能

34.12.杂项功能

34.13.通知处理

34.14.事件系统

34.14.1.事件类型

34.14.2.事件回调过程

34.14.3.活动支持功能

34.14.4.事件示例

34.15.环境变量

34.16.密码文件

34.17.连接服务文件

34.18.连接参数的 LDAP 查找

34.19.SSL 支持

34.19.1.服务器证书的客户端验证

34.19.2.客户证书

34.19.3.不同模式提供的保护

34.19.4.SSL 客户端文件使用

34.19.5.SSL 库初始化

34.20.线程程序中的行为

34.21.构建 libpq 程序

34.22.示例程序

libpq 是 C 应用程序程序员到 PostgreSQL 的接口。libpq 是一组库函数,允许客户端程序将查询传递给 PostgreSQL 后端服务器并接收这些查询的结果。

libpq 也是其他几个 PostgreSQL 应用程序接口的底层引擎,包括为 C++、Perl、Python、Tcl 和 ECPG 编写的那些。因此,如果您使用其中一个软件包,libpq 行为的某些方面将对您很重要。特别是,第 34.15 节,第 34.16 节第 34.19 节描述任何使用 libpq 的应用程序的用户可见的行为。

本章末尾包含一些简短的程序(第 34.22 节) 展示如何编写使用 libpq 的程序。目录下还有几个完整的libpq应用示例源/测试/示例在源代码分发中。

使用 libpq 的客户端程序必须包含头文件libpq-fe.h并且必须与 libpq 库链接。