(PHP 5 >= 5.1.0, PHP 7, PHP 8)
pg_send_prepare — Envía una solicitud para crear una consulta preparada con los argumentos dados, sin esperar el final de su ejecución
Envía una solicitud para crear una consulta preparada con los argumentos dados, sin esperar el final de su ejecución.
Esta función es la versión asíncrona de pg_prepare()
: devuelve true
si ha sido capaz de distribuir la consulta y
false
si no ha sido capaz. Tras una llamada exitosa, llame
a pg_get_result() para determinar si el servidor ha creado
correctamente la consulta preparada.
Los argumentos de la función son gestionados de la misma manera que
pg_execute(). Al igual que pg_execute(), la
función no funcionará en versiones anteriores a PostgreSQL 7.4.
connection
An PgSql\Connection instance.
statement_name
El nombre a dar a la consulta preparada. Debe ser único en cada sesión. Si se especifica una cadena vacía ("") entonces se crea una consulta sin nombre, sobrescribiendo las consultas sin nombre previamente definidas.
query
La consulta SQL con sus argumentos. Debe contener solo una consulta. No se permiten múltiples consultas separadas por punto y coma. Si se utilizan argumentos, se refieren a $1, $2, etc.
Devuelve true
en caso de éxito, false
o 0
en caso de error.
Utilice pg_get_result() para determinar el resultado
de la consulta.
Versión | Descripción |
---|---|
8.1.0 |
The connection parameter expects an PgSql\Connection
instance now; previously, a recurso was expected.
|
Ejemplo #1 Ejemplo pg_send_prepare()
<?php
$dbconn = pg_connect("dbname=publisher") or die("Conexión imposible");
// Prepara una consulta para la ejecución
if (!pg_connection_busy($dbconn)) {
pg_send_prepare($dbconn, "my_query", 'SELECT * FROM magasins WHERE nom = $1');
$res1 = pg_get_result($dbconn);
}
// Ejecuta la consulta preparada. Note que no es necesario escapar
// la cadena "Joe's Widgets"
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Joe's Widgets"));
$res2 = pg_get_result($dbconn);
}
// Ejecuta la misma consulta preparada, esta vez con un argumento diferente
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Vêtements Vêtements Vêtements"));
$res3 = pg_get_result($dbconn);
}
?>