PG_SEND_QUERY(3) PG_SEND_QUERY(3)
pg_send_query - Sends asynchronous query
SYNOPSIS
bool pg_send_query (resource $connection, string $query)
DESCRIPTION
pg_send_query(3) sends a query or queries asynchronously to the $connection. Unlike pg_query(3), it can send multiple queries at once to
PostgreSQL and get the results one by one using pg_get_result(3).
Script execution is not blocked while the queries are executing. Use pg_connection_busy(3) to check if the connection is busy (i.e. the
query is executing). Queries may be cancelled using pg_cancel_query(3).
Although the user can send multiple queries at once, multiple queries cannot be sent over a busy connection. If a query is sent while the
connection is busy, it waits until the last query is finished and discards all its results.
PARAMETERS
o $connection
- PostgreSQL database connection resource.
o $query
- The SQL statement or statements to be executed. Data inside the query should be properly escaped.
RETURN VALUES
Returns TRUE on success or FALSE on failure.
Use pg_get_result(3) to determine the query result.
EXAMPLES
Example #1
pg_send_query(3) example
<?php
$dbconn = pg_connect("dbname=publisher") or die("Could not connect");
if (!pg_connection_busy($dbconn)) {
pg_send_query($dbconn, "select * from authors; select count(*) from authors;");
}
$res1 = pg_get_result($dbconn);
echo "First call to pg_get_result(): $res1
";
$rows1 = pg_num_rows($res1);
echo "$res1 has $rows1 records
";
$res2 = pg_get_result($dbconn);
echo "Second call to pg_get_result(): $res2
";
$rows2 = pg_num_rows($res2);
echo "$res2 has $rows2 records
";
?>
The above example will output:
First call to pg_get_result(): Resource id #3
Resource id #3 has 3 records
Second call to pg_get_result(): Resource id #4
Resource id #4 has 1 records
SEE ALSO
pg_query(3), pg_cancel_query(3), pg_get_result(3), pg_connection_busy(3).
PHP Documentation Group PG_SEND_QUERY(3)