(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_result_status — Возвращает статус результата запроса
Функция pg_result_status() возвращает текущий статус экземпляра PgSql\Result или тег завершения PostgreSQL-команды, который связан с результатом.
result
Экземпляр класса PgSql\Result, который возвращают функции pg_query(), pg_query_params() или pg_execute() (среди прочего).
mode
Параметр принимает значение
PGSQL_STATUS_LONG
для возврата числового статуса,
который содержится в объекте с результатами запроса и который передали в аргументе result
,
или значение PGSQL_STATUS_STRING
для возврата тега команды
из того же объекта с результатами запроса — result
.
Значение по умолчанию равно PGSQL_STATUS_LONG
.
При передаче в аргументе константы PGSQL_STATUS_LONG
функция возвращает константу из следующего списка:
PGSQL_EMPTY_QUERY
,
PGSQL_COMMAND_OK
,
PGSQL_TUPLES_OK
,
PGSQL_TUPLES_CHUNK
,
PGSQL_COPY_OUT
,
PGSQL_COPY_IN
,
PGSQL_BAD_RESPONSE
,
PGSQL_NONFATAL_ERROR
,
PGSQL_FATAL_ERROR
.
В остальных случаях функция вернёт строковое представление состояния
результата запроса.
Версия | Описание |
---|---|
8.1.0 |
Параметр result теперь ожидает экземпляр класса
PgSql\Result; раньше параметр ожидал ресурс (resource).
|
Пример #1 Пример возврата статуса результата запроса функцией pg_result_status()
<?php
// Подключаемся к базе данных
$conn = pg_pconnect("dbname=publisher");
// Выполняем команду COPY
$result = pg_query($conn, "COPY authors FROM STDIN;");
// Получаем состояние результата запроса
$status = pg_result_status($result);
// Разбираем полученные данные
if ($status == PGSQL_COPY_IN) {
echo "Copy began.";
} else {
echo "Copy failed.";
}
?>
Результат выполнения приведённого примера:
Copy began.