pg_result_error_field
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
pg_result_error_field — Retorna um campo individual de um relatório de erros
Descrição
pg_result_error_field() retorna um dos campos de mensagem de erro
detalhados associados à instância de result
. Ele está disponível apenas
em um servidor PostgreSQL 7.4 ou superior. O campo de erro é especificado pelo
field_code
.
Porque pg_query() e pg_query_params() retornam false
se a consulta falhar,
você deverá usar pg_send_query() e
pg_get_result() para obter o identificador do resultado.
Se você precisar obter informações adicionais sobre erros de consultas pg_query() com falha, use pg_set_error_verbosity() e pg_last_error() e então analise o resultado.
Parâmetros
result
-
Uma instância de PgSql\Result, retornada por pg_query(), pg_query_params() ou pg_execute() (entre outras).
field_code
-
Os possíveis valores de
field_code
são: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
(somente PostgreSQL 8.0+),PGSQL_DIAG_INTERNAL_QUERY
(somente PostgreSQL 8.0+),PGSQL_DIAG_CONTEXT
,PGSQL_DIAG_SOURCE_FILE
,PGSQL_DIAG_SOURCE_LINE
ouPGSQL_DIAG_SOURCE_FUNCTION
.
Valor Retornado
Uma string contendo o conteúdo do campo de erro, null
se o campo não existir ou false
em caso de falha.
Registro de Alterações
Versão | Descrição |
---|---|
8.1.0 |
O parâmetro result agora espera uma instância de PgSql\Result;
anteriormente, um resource era esperado.
|
Exemplos
Example #1 Exemplo de pg_result_error_field()
<?php
$dbconn = pg_connect("dbname=publisher") or die("Não foi possível conectar");
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);
?>