pg_prepare
Envoie une requête pour créer une requête préparée avec les paramètres
donnés et attend l'exécution
&reftitle.description;
PgSql\Resultfalsepg_prepare
PgSql\Connectionconnection
stringstmtname
stringquery
pg_prepare crée une requête préparée pour une
exécution ultérieure avec pg_execute ou
pg_send_execute.
Cette caractéristique permet aux commandes qui seront utilisées à
plusieurs reprises d'être analysées et planifiées qu'une seule fois,
plutôt que d'être exécutées chaque fois.
pg_prepare est supportée seulement avec les versions
PostgreSQL 7.4 ou plus récentes; la commande échouera si vous l'utilisez
avec des versions antérieures.
La fonction crée une requête préparée nommée
stmtname à partir de la chaîne
query, celle-ci doit contenir qu'une seule commande
SQL. stmtname peut être vide ("") pour créer une
requête qui n'est pas nommée. Dans ce cas, les requêtes qui existaient et
qui se trouvaient sans noms sont automatiquement remplacées; autrement, il y
aura une erreur si le nom de la requête est déjà défini dans la session
courante. Si des paramètres sont utilisés, ils sont référés à $1, $2, etc.
dans query.
Des requêtes préparées à utiliser avec pg_prepare
peuvent être aussi créées en exécutant la requête SQL
PREPARE. (Par contre, pg_prepare
est plus flexible puisqu'elle ne nécessite pas que les types des paramètres
soit préspécifiés.) De plus, bien qu'il n'y a pas de fonction PHP pour
supprimer une requête préparée, la requête SQL
DEALLOCATE peut être utilisé pour ce motif.
&reftitle.parameters;
connection
&pgsql.parameter.connection-with-unspecified-default;
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 noms 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.
&reftitle.returnvalues;
Une instance PgSql\Result en cas de succès, &return.falseforfailure;.
&reftitle.changelog;
&Version;
&Description;
&pgsql.changelog.return-result-object;
&pgsql.changelog.connection-object;
&reftitle.examples;
Exemple avec pg_prepare
]]>
&reftitle.seealso;
pg_execute
pg_send_execute