(PHP 5 >= 5.1.0)
pg_result_error_field — Gibt den Inhalt eines bestimmtes Feldes zu einer Fehlermeldung zurück
pg_result_error_field() gibt ein Feld der ausführlichen Fehlerbeschreibung zurück, die mit der Ergebniskennung result verbunden ist. Die Funktion wird nur für Verbindungen zu PostgreSQL ab der Version 7.4 unterstützt. Das gewünschte Feld wird im Parameter fieldcode übergeben.
Da pg_query() und pg_query_params() FALSE zurückgeben, wenn eine Abfrage fehlschlägt, müssen Sie pg_send_query() und pg_get_result() benutzen, um eine Ergebniskennung zu erhalten.
Falls Sie weitergehende Informationen über einen aufgetretenen Fehler bei pg_query() brauchen, können Sie pg_set_error_verbosity() oder pg_last_error() aufrufen und deren Ergebnisse analysieren.
Die Ergebniskennung einer vorhergehenden PostgreSQL-Abfrage.
Mögliche Werte von fieldcode sind: 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 (nur PostgreSQL ab Version 8.0), PGSQL_DIAG_INTERNAL_QUERY (nur PostgreSQL ab Version 8.0), PGSQL_DIAG_CONTEXT, PGSQL_DIAG_SOURCE_FILE, PGSQL_DIAG_SOURCE_LINE or PGSQL_DIAG_SOURCE_FUNCTION.
Ein string, der den Inhalt des Fehlerfeldes enthält, oder NULL, falls das Feld nicht existiert. Bei einem Fehler wird FALSE zurückgegeben.
Beispiel #1 pg_result_error_field()-Beispiel
<?php
$dbconn = pg_connect("dbname=publisher") or die("Konnte nicht verbinden.");
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);
?>