PHP Handbuch
Zurück |  | Weiter

# pg_send_prepare

(PHP 5 >= 5.1.0RC1)

pg_send_prepare -- Sendet eine Aufforderung an den Server, eine vorbereitete Abfrage mit den übergebenen Parametern zu erzeugen, ohne auf ihre Beendigung zu warten.

## Beschreibung

bool pg_send_prepare ( resource connection, string stmtname, string query )

Sendet eine Aufforderung an den Server, eine vorbereitete Anfrage mit den übergebenen Parametern zu erzeugen, ohne auf ihre Beendigung zu warten.

Dies ist eine asynchrone Version von pg_prepare(): Sie gibt `TRUE` zurück, falls es möglich war, die Aufforderung abzusenden, ansonsten `FALSE`. Nach einem erfolgreichen Absenden rufen Sie pg_get_result() auf, um festzustellen, ob der Server die vorbereitete Abfrage erfolgreich erzeugt hat. Die Parameter der Funktion werden genauso verarbeitet, wie bei der Funktion pg_prepare() beschrieben und genau wie diese kann pg_send_prepare() nicht mit PostgreSQL Versionen vor 7.4 benutzet werden.

## Parameter Liste

`connection`

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

`stmtname`

  Der Name der vorbereiteten Abfrage. Dieser Name muss in der aktuellen Datenbanksitzung eindeutig sein. Falls "" angegeben wird, wird eine unbenannte Abfrage erzeugt, die alle zuvor definierten unbenannten Abfragen überschreibt.

`query`

  Die parametrisierte Abfrage. Diese darf nur ein einziges SQL-Kommando enthalten (mehrere Kommandos, durch Semikolon getrennt, sind nicht zulässig). Falls Parameter übergeben werden, werden sie als $1, $2, ... referenziert.

## Rückgabewerte

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

## Beispiele

Beispiel 1. pg_send_prepare() benutzen:

`<?php
$dbconn = pg_connect("dbname=publisher") or die("Konnte nicht verbinden");
// Eine 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_connect()
pg_pconnect()
pg_execute()
pg_send_execute()
pg_send_query_params()

Zurück | Zum Anfang | Weiter
pg_send_execute | Nach oben | pg_send_query_params