Forum und email

pg_result_error_field

(PHP 5 >= 5.1.0)

pg_result_error_field — Gibt den Inhalt eines bestimmtes Feldes zu einer Fehlermeldung zurück.

Beschreibung

string pg_result_error_field ( resource $result , int $fieldcode )

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.

Parameter Liste

result

Die Ergebniskennung einer vorhergehenden PostgreSQL-Abfrage.

fieldcode

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.

Rückgabewerte

Ein string, der den Inhalt des Fehlerfeldes enthält oder NULL, falls das Feld nicht existiert. Bei einem Fehler wird FALSE zurückgegeben.

Beispiele

Example#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($res1PGSQL_DIAG_SQLSTATE);
?>

Siehe auch