(PHP 5 >= 5.1.0, PHP 7, PHP 8)
pg_result_error_field — Retourne un champ individuel d'un rapport d'erreur
pg_result_error_field() retourne un des champs détaillés
de message d'erreur qui sont associés à la ressource
result
. Cette fonction est disponible seulement sur
les serveurs PostgreSQL 7.4 ou supérieurs. Le champ d'erreur est spécifié
par field_code
.
Puisque pg_query() et
pg_query_params() retourne false
si la requête échoue,
vous devez utiliser pg_send_query() et
pg_get_result() pour obtenir le jeu de résultats.
Si vous avez besoin d'obtenir plus d'informations sur l'erreur lors de l'échec des requêtes avec pg_query(), utilisez pg_set_error_verbosity() et pg_last_error() et analyser ensuite le résultat.
result
Une instance PgSql\Result, retourné par pg_query(), pg_query_params(), ou pg_execute() (entre autres).
field_code
Les valeurs possibles de field_code
sont :
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+ seulement),
PGSQL_DIAG_INTERNAL_QUERY
(PostgreSQL 8.0+ seulement),
PGSQL_DIAG_CONTEXT
, PGSQL_DIAG_SOURCE_FILE
,
PGSQL_DIAG_SOURCE_LINE
ou
PGSQL_DIAG_SOURCE_FUNCTION
.
Retourne une chaîne contenant le contenu du champ d'erreur, null
si le
champ n'existe pas ou false
en cas d'échec.
Version | Description |
---|---|
8.1.0 |
Le paramètre result attend désormais une instance de
PgSql\Result ; auparavant, une ressource était attendu.
|
Exemple #1 Exemple avec pg_result_error_field()
<?php
$dbconn = pg_connect("dbname=publisher") or die("Connexion impossible");
if (!pg_connection_busy($dbconn)) {
pg_send_query($dbconn, "select * from nexistepas;");
}
$res1 = pg_get_result($dbconn);
echo pg_result_error_field($res1, PGSQL_DIAG_SQLSTATE);
?>