(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_send_query — Ejecuta una consulta PostgreSQL asíncrona
pg_send_query() envía una consulta o varias consultas
de manera asíncrona a la conexión connection.
A diferencia de pg_query(), puede enviar varias consultas
al mismo tiempo al servidor PostgreSQL y obtener los resultados uno por uno
utilizando pg_get_result().
La ejecución del script no se bloquea durante la ejecución de las consultas. Se puede utilizar pg_connection_busy() para verificar si la conexión está ocupada (es decir, si la consulta se está ejecutando). Las consultas pueden ser canceladas con pg_cancel_query().
Aunque se puedan enviar varias consultas al mismo tiempo, no es posible enviar varias consultas en una conexión ocupada. Si se envía una consulta cuando la conexión está ocupada, esperará a que la consulta anterior termine y perderá todos sus resultados.
connectionEl recurso de conexión de la base de datos PostgreSQL.
queryLa consulta o las consultas SQL a ser ejecutadas.
Los datos contenidos en la consulta deben ser escaped correctamente.
Devuelve true en caso de éxito, false o 0 en caso de fallo.
Utilice pg_get_result() para determinar el resultado
de la consulta.
| Versión | Descripción |
|---|---|
| 8.1.0 |
El parámetro connection ahora espera una instancia de
PgSql\Connection ; anteriormente, se esperaba un resource.
|
Ejemplo #1 Ejemplo con pg_send_query()
<?php
$dbconn = pg_connect("dbname=publisher") or die("Conexión imposible");
if (!pg_connection_busy($dbconn)) {
pg_send_query($dbconn,"select * from autores; select count(*) from autores;");
}
$res1 = pg_get_result($dbconn);
echo "Primera llamada a pg_get_result() : $res1\n";
$rows1 = pg_num_rows($res1);
echo "$res1 tiene $rows1 registros\n\n";
$res2 = pg_get_result($dbconn);
echo "Segunda llamada a pg_get_result() : $res2\n";
$rows2 = pg_num_rows($res2);
echo "$res2 tiene $rows2 registros\n";
?>El ejemplo anterior mostrará :
Primera llamada a pg_get_result() : Resource id #3 Resource id #3 tiene 3 registros Segunda llamada a pg_get_result() : Resource id #4 Resource id #4 tiene 1 registros