openGauss应用开发指南(42)

PQstatus

功能描述

返回链接的状态。

原型

ConnStatusType PQstatus(const PGconn *conn);

参数

表 1 PQstatus参数

关键字

参数说明

conn

指向包含链接的对象指针。

返回值

ConnStatusType:链接状态的枚举,包括:

CONNECTION_STARTED
等待进行连接。

CONNECTION_MADE
连接成功;等待发送。

CONNECTION_AWAITING_RESPONSE
等待来自服务器的响应。

CONNECTION_AUTH_OK
已收到认证;等待后端启动结束。

CONNECTION_SSL_STARTUP
协商SSL加密。

CONNECTION_SETENV
协商环境驱动的参数设置。

CONNECTION_OK
链接正常。

CONNECTION_BAD
链接故障。

注意事项

状态可以是多个值之一。但是,在异步连接过程之外只能看到其中两个:CONNECTION_OK和CONNECTION_BAD。与数据库的良好连接状态为CONNECTION_OK。与数据库的连接尝试失败为CONNECTION_BAD。通常,“正常”状态将一直保持到PQfinish,但通信失败可能会导致状态CONNECTION_BAD过早变为。在这种情况下,应用程序可以尝试通过调用进行恢复PQreset。

示例

请参见示例章节。

数据库执行语句函数

与数据库服务器的连接成功建立,便可以使用这里描述的函数执行SQL查询和命令。

PQclear

功能描述

释放与PGresult相关联的存储空间,任何不再需要的查询结果都应该用PQclear释放掉。

原型

void PQclear(PGresult *res);

参数

表 1 PQclear参数

关键字

参数说明

res

包含查询结果的对象指针。

注意事项

PGresult不会自动释放,当提交新的查询时它并不消失,甚至断开连接后也不会。要删除它,必须调用PQclear,否则则会有内存泄漏。

示例

请参见示例章节。

 

PQexec

功能描述

向服务器提交一条命令并等待结果。

原型

PGresult *PQexec(PGconn *conn, const char *command);

参数

表 1 PQexec参数

关键字

参数说明

conn

指向包含链接的对象指针。

command

需要执行的查询字符串。

返回值

PGresult:包含查询结果的对象指针。

注意事项

应该调用PQresultStatus函数来检查任何错误的返回值(包括空指针的值,在这种情况下它将返回PGRES_FATAL_ERROR)。使用PQerrorMessage获取有关错误的更多信息。

 须知:
命令字符串可以包括多个SQL命令(用分号分隔)。在一个PQexec调用中发送的多个查询是在一个事务里处理的,除非在查询字符串里有明确的BEGIN/COMMIT命令把整个字符串分隔成多个事务。请注意,返回的PGresult结构只描述字符串里执行的最后一条命令的结果,如果有一个命令失败,那么字符串处理的过程就会停止,并且返回的PGresult会描述错误条件。

示例

请参见示例章节。

PQexecParams

功能描述

执行一个绑定参数的命令。

原型

PGresult* PQexecParams(PGconn* conn, 
                       const char* command,
                       int nParams,
                       const Oid* paramTypes,
                       const char* const* paramValues,
                       const int* paramLengths,
                       const int* paramFormats, 
                       int resultFormat);

参数

表 1 PQexecParams参数

关键字

参数说明

conn

连接句柄。

command

SQL文本串。

nParams

绑定参数的个数。

paramTypes

绑定参数类型。

paramValues

绑定参数的值。

paramLengths

参数长度。

paramFormats

参数格式(文本或二进制)。

resultFormat

返回结果格式(文本或二进制)。

返回值

PGresult类型指针。

PQexecParamsBatch

功能描述

执行一个批量绑定参数的命令。

原型

PGresult* PQexecParamsBatch(PGconn* conn, 
                            const char* command,
                            int nParams,
                            int nBatch, 
                            const Oid* paramTypes,
                            const char* const* paramValues,
                            const int* paramLengths,
                            const int* paramFormats,
                            int resultFormat);

参数

表 1 PQexecParamsBatch参数

关键字

参数说明

conn

连接句柄。

command

SQL文本串。

nParams

绑定参数的个数。

nBatch

批量操作数。

paramTypes

绑定参数类型。

paramValues

绑定参数的值。

paramLengths

参数长度。

paramFormats

参数格式(文本或二进制)。

resultFormat

返回结果格式(文本或二进制)。

返回值

PGresult类型指针。

PQexecPrepared

功能描述

发送一个请求来用给定参数执行一个预备语句,并且等待结果。

原型

PGresult* PQexecPrepared(PGconn* conn, 
                         const char* stmtName, 
                         int nParams, 
                         const char* const* paramValues,
                         const int* paramLengths,
                         const int* paramFormats,
                         int resultFormat);

参数

表 1 PQexecPrepared参数

关键字

参数说明

conn

连接句柄。

stmtName

stmt名称,可以用""或者NULL来引用未命名语句,否则它必须是一个现有预备语句的名字。

nParams

参数个数。

paramValues

参数的实际值。

paramLengths

参数的实际数据长度。

paramFormats

参数的格式(文本或二进制)。

resultFormat

结果的格式(文本或二进制)。

返回值

PGresult类型指针。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值