pg_send_execute

(PHP 5 >= 5.1.0, PHP 7)

pg_send_execute Sendet eine Aufforderung an den Server, eine vorbereitete Abfrage mit den übergebenen Parametern auszuführen, ohne auf die Ergebnisse zu warten

Beschreibung

pg_send_execute ( resource $connection , string $stmtname , array $params ) : bool

Sendet eine Aufforderung an den Server, eine vorbereitete Anfrage mit den übergebenen Parametern auszuführen, ohne auf die Ergebnisse zu warten.

Dies ist ähnlich, wie die Funktion pg_send_query_params(), nur dass das auszuführende Kommando eine zuvor benannte vorbereitete Abfrage ist und kein Abfragestring. Die Parameter der Funktion werden genauso verarbeitet, wie bei der Funktion pg_execute() beschrieben und genau wie diese kann pg_send_execute() nicht mit PostgreSQL Versionen vor 7.4 benutzet werden.

Parameter-Liste

connection

PostgreSQL Verbindungkennung. Falls connection nicht angegeben wurde, wird die zuletzt mit pg_connect() oder pg_pconnect() geöffnete Verbindung benutzt.

stmtname

Der Name der auszuführenden vorbereiteten Abfrage. Falls "" angegeben wird, wird eine unbenannte Abfrage ausgeführt. Der Name muss zuvor mit pg_prepare(), pg_send_prepare() oder dem SQL-Kommando PREPARE definiert worden sein.

params

Ein Array mit Parameterwerten, mit denen die Platzhalter $1, $2 usw. in der ursprünglichen vorbereiteten Abfrage ersetzt werden. Die Anzahl der Elemente dieses Arrays muss mit der Anzahl der Platzhalter übereinstimmen.

Rückgabewerte

Gibt bei Erfolg TRUE zurück oder FALSE, falls ein Fehler auftrat. Verwenden Sie pg_get_result(), um das Abfrageergebnis zu erhalten.

Beispiele

Beispiel #1 pg_send_execute() benutzen:

<?php
  $dbconn 
pg_connect("dbname=publisher") or die("Konnte nicht verbinden");

  
// Abfrage vorbereiten
  
if (!pg_connection_busy($dbconn)) {
    
pg_send_prepare($dbconn"my_query"'SELECT * FROM shops WHERE name = $1');
    
$res1 pg_get_result($dbconn);
  }

  
// Die vorbereitete Abfrage ausführen. Beachten Sie, dass es
  // nicht nötig ist, den String "Joe's Widgets" zu maskieren 
  
if (!pg_connection_busy($dbconn)) {
    
pg_send_execute($dbconn"my_query", array("Joe's Widgets"));
    
$res2 pg_get_result($dbconn);
  }
  
  
// Dieselbe vorbereitete Abfrage, diesmal mit einem anderen Parameter.
  
if (!pg_connection_busy($dbconn)) {
    
pg_send_execute($dbconn"my_query", array("Clothes Clothes Clothes"));
    
$res3 pg_get_result($dbconn);
  }
  
?>

Siehe auch

  • pg_prepare() - Sendet eine Aufforderung an den Server, eine vorbereitete Anfrage mit den übergebenen Parametern zu erzeugen und wartet auf ihre Beendigung
  • pg_send_prepare() - Sendet eine Aufforderung an den Server, eine vorbereitete Abfrage mit den übergebenen Parametern zu erzeugen, ohne auf ihre Beendigung zu warten
  • pg_execute() - Fordert den Datenankserver auf, eine vorbereitete Anfrage mit den angegebenen Parametern auszuführen und wartet auf das Ergebnis