Envoie une requête pour créer une requête préparée avec les paramètres donnés, sans attendre la fin de son exécution

# pg_send_prepare

(PHP 5 >= 5.1.0, PHP 7)

pg_send_prepare — Envoie une requête pour créer une requête préparée avec les paramètres donnés, sans attendre la fin de son exécution

### Description

pg_send_prepare ( resource `$connection` , string `$stmtname` , string `$query` ) : bool

Envoie une requête pour créer une requête préparée avec les paramètres donnés, sans attendre la fin de son exécution.

Cette fonction est la version asynchrone de pg_prepare() : elle retourne `TRUE` si elle a été capable de répartir la requête et `FALSE` si elle n'a pas été capable. Après un appel réussi, appelez pg_get_result() pour déterminer si le serveur a créé correctement la requête préparée. Les paramètres de la fonctions sont gérés de la même manière que pg_execute(). Comme pg_execute(), la fonction ne fonctionnera pas sur les versions antérieures à PostgreSQL 7.4.

### Liste de paramètres

`connection`

  La ressource de connexion de la base de données PostgreSQL. Lorsque `connection` n'est pas présent, la connexion par défaut est utilisée. La connexion par défaut est la dernière connexion faite par pg_connect() ou pg_pconnect().

`stmtname`

  Le nom à donner à la requête préparée. Il doit être unique à chaque session. Si une chaîne vide est spécifiée ("") alors une requête sans nom est créée, écrasant les requêtes sans nom précédemment définies.

`query`

  La requête SQL avec ses paramètres. Elle doit contenir seulement une seule requête. Plusieurs requêtes séparées par des points-virgules ne sont pas autorisées. Si des paramètres sont utilisés, ils sont référés à $1, $2, etc.

### Valeurs de retour

Retourne `TRUE` en cas de succès, `FALSE` en cas d'échec. Utilisez pg_get_result() pour déterminer le résultat de la requête.

### Exemples

Exemple #1 Exemple pg_send_prepare()

`<?php
$dbconn = pg_connect("dbname=publisher") or die("Connexion impossible");
// Prépare une requête pour l'exécution
if (!pg_connection_busy($dbconn)) {
pg_send_prepare($dbconn, "my_query", 'SELECT * FROM magasins WHERE nom = $1');
$res1 = pg_get_result($dbconn);
}
// Exécute la requête préparée. Notez qu'il n'est pas nécessaire d'échapper
// la chaîne "Joe's Widgets"
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Joe's Widgets"));
$res2 = pg_get_result($dbconn);
}
// Exécute la même requête préparée, cette fois avec un paramètre différent
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Vêtements Vêtements Vêtements"));
$res3 = pg_get_result($dbconn);
}
?>`

### Voir aussi

- pg_connect() - Établit une connexion PostgreSQL
- pg_pconnect() - Établit une connexion PostgreSQL persistante
- pg_execute() - Exécute une requête préparée PostGreSQL
- pg_send_execute() - Envoie une requête pour exécuter une requête préparée avec des paramètres donnés, sans attendre le(s) résultat(s)
- pg_send_query_params() - Envoie une commande et sépare les paramètres au serveur sans attendre le(s) résultat(s)