Documentación offline PHP master

pg_send_query

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

pg_send_query

Ejecuta una consulta PostgreSQL asíncrona

Descripción#

pg_send_query(PgSql\Connection $connection, string $query): int
```php

`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.

## Parámetros

`connection`  
Una instancia `PgSql\Connection`.

`query`  
La consulta o las consultas SQL a ser ejecutadas.

Los datos contenidos en la consulta deben ser [escaped correctamente](#function.pg-escape-string).

## Valores devueltos

Devuelve `true` en caso de éxito, `false` o `0` en caso de fallo. Utilice `pg_get_result` para determinar el resultado de la consulta.

## Historial de cambios

| Versión | Descripción |
|----|----|
| 8.1.0 | El parámetro `connection` ahora espera una instancia de `PgSql\Connection` ; anteriormente, se esperaba un `resource`. |

## Ejemplos

Ejemplo con `pg_send_query`

```php

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

Véase también#

pg_query, pg_cancel_query, pg_get_result, pg_connection_busy