PHP

pg_result_error_field

pg_result_error_field

(PHP 5 >= 5.1.0, PHP 7)

pg_result_error_field - 返回错误报告的单个字段。

描述

string pg_result_error_field ( resource $result , int $fieldcode )

pg_result_error_field()返回与result资源关联的详细错误消息字段之一。它仅适用于PostgreSQL 7.4或更高版本的服务器。错误字段由fieldcode

因为FALSE如果查询失败,pg_query()和pg_query_params()会返回,所以您必须使用pg_send_query()和pg_get_result()来获取结果句柄。

如果您需要从失败的pg_query()查询中获取其他错误信息,请使用pg_set_error_verbosity()和pg_last_error(),然后解析结果。

参数

result

来自先前执行的语句的PostgreSQL查询结果资源。

fieldcode

可能的fieldcode值包括:PGSQL_DIAG_SEVERITYPGSQL_DIAG_SQLSTATEPGSQL_DIAG_MESSAGE_PRIMARYPGSQL_DIAG_MESSAGE_DETAILPGSQL_DIAG_MESSAGE_HINTPGSQL_DIAG_STATEMENT_POSITIONPGSQL_DIAG_INTERNAL_POSITION(PostgreSQL的8.0+只),PGSQL_DIAG_INTERNAL_QUERY(PostgreSQL的8.0+只), ,,PGSQL_DIAG_CONTEXT 或。PGSQL_DIAG_SOURCE_FILEPGSQL_DIAG_SOURCE_LINEPGSQL_DIAG_SOURCE_FUNCTION

返回值

包含错误字段内容的字符串,NULL如果字段不存在或FALSE失败。

例子

示例#1 pg_result_error_field()示例

<?php   $dbconn = pg_connect("dbname=publisher") or die("Could not connect"   if (!pg_connection_busy($dbconn)) {       pg_send_query($dbconn, "select * from doesnotexist;"   }      $res1 = pg_get_result($dbconn   echo pg_result_error_field($res1, PGSQL_DIAG_SQLSTATE ?>