PHP 8.4.1 Released!

pg_send_execute

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

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(PgSql\Connection $connection, string $statement_name, array $params): int|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(), aber das auszuführende Kommando wird statt durch einen Abfragestring durch den Namen einer zuvor vorbereiteten Anweisung angegeben. 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 benutzt werden.

Parameter-Liste

connection

Eine PgSql\Connection-Instanz.

statement_name

Der Name der auszuführenden vorbereiteten Anweisung. 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 Anweisung ersetzt werden. Die Anzahl der Elemente dieses Arrays muss mit der Anzahl der Platzhalter übereinstimmen.

Rückgabewerte

Gibt bei Erfolg true zurück und false oder 0, falls ein Fehler auftrat. Benutzen Sie pg_get_result(), um das Abfrageergebnis zu erhalten.

Changelog

Version Beschreibung
8.1.0 Der Parameter connection erwartet nun eine PgSql\Connection-Instanz; vorher wurde eine Ressource erwartet.

Beispiele

Beispiel #1 Die Verwendung von pg_send_execute():

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

// Die 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

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top