pg_result_error_field
(PHP 5 >= 5.1.0, PHP 7)
pg_result_error_field — Возвращает конкретное поле из отчета об ошибках
Описание
$result
, int $fieldcode
) : string
pg_result_error_field() возвращает одно из полей
отчета об ошибках, связанного с ресурсом result
.
Функция поддерживается серверами PostgreSQL версий 7.4 и выше. Нужное
поле задается аргументом fieldcode
.
Функции pg_query() и pg_query_params()
в случае ошибок возвращают false
вместо ресурса. Чтобы иметь
возможность обрабатывать ошибки, пользуйтесь функциями
pg_send_query() и pg_get_result().
Для получения дополнительной информации о ходе выполнения отказавшей функции pg_query() используйте функции pg_set_error_verbosity() и pg_last_error() и обрабатывайте результат их выполнения.
Список параметров
-
result
-
Ресурс результата предыдущего запроса PostgreSQL.
-
fieldcode
-
Возможные значения аргумента
fieldcode
:PGSQL_DIAG_SEVERITY
,PGSQL_DIAG_SQLSTATE
,PGSQL_DIAG_MESSAGE_PRIMARY
,PGSQL_DIAG_MESSAGE_DETAIL
,PGSQL_DIAG_MESSAGE_HINT
,PGSQL_DIAG_STATEMENT_POSITION
,PGSQL_DIAG_INTERNAL_POSITION
(для версий PostgreSQL 8.0 и выше),PGSQL_DIAG_INTERNAL_QUERY
(для версий PostgreSQL 8.0 и выше),PGSQL_DIAG_CONTEXT
,PGSQL_DIAG_SOURCE_FILE
,PGSQL_DIAG_SOURCE_LINE
,PGSQL_DIAG_SOURCE_FUNCTION
.
Возвращаемые значения
Сообщение об ошибке из заданного поля в виде строки (string); 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);
?>