pg_send_prepare
(PHP 5 >= 5.1.0)
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
$connection
, string $stmtname
, string $query
)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
connectionn'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)
