PQresultStatus

功能描述

返回命令的结果状态。

原型

1. ExecStatusType PQresultStatus(const PGresult *res);

参数

表 1 PQresultStatus参数

关键字 参数说明
res 包含查询结果的对象指针。

返回值

PQresultStatus:命令执行结果的枚举,包括:

1. PQresultStatus可以返回下面数值之一:
2. PGRES_EMPTY_QUERY
3. 发送给服务器的字串是空的。

5. PGRES_COMMAND_OK
6. 成功完成一个不返回数据的命令。

8. PGRES_TUPLES_OK
9. 成功执行一个返回数据的查询(比如SELECT或者SHOW)。

11. PGRES_COPY_OUT
12. (从服务器)Copy Out (拷贝出)数据传输开始。

14. PGRES_COPY_IN
15. Copy In(拷贝入)(到服务器)数据传输开始。

17. PGRES_BAD_RESPONSE
18. 服务器的响应无法理解。

20. PGRES_NONFATAL_ERROR
21. 发生了一个非致命错误(通知或者警告)。

23. PGRES_FATAL_ERROR
24. 发生了一个致命错误。

26. PGRES_COPY_BOTH
27. 拷贝入/出(到和从服务器)数据传输开始。这个特性当前只用于流复制, 所以这个状态不会在普通应用中发生。

29. PGRES_SINGLE_TUPLE
30. PGresult包含一个来自当前命令的结果元组。 这个状态只在查询选择了单行模式时发生

注意事项

  • 请注意,恰好检索到零行的SELECT命令仍然显示PGRES_TUPLES_OK。PGRES_COMMAND_OK用于永远不能返回行的命令(插入或更新,不带返回子句等)。PGRES_EMPTY_QUERY响应可能表明客户端软件存在bug。
  • 状态为PGRES_NONFATAL_ERROR的结果永远不会由PQexec或其他查询执行函数直接返回,此类结果将传递给通知处理程序。

示例

请参见示例章节。