PG_SEND_QUERY(3)PG_SEND_QUERY(3)pg_send_query - Sends asynchronous querySYNOPSIS
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)
Check Out this Related Man Page
PG_SEND_EXECUTE(3)PG_SEND_EXECUTE(3)pg_send_execute - Sends a request to execute a prepared statement with given parameters, without waiting for the result(s).SYNOPSIS
bool pg_send_execute (resource $connection, string $stmtname, array $params)
DESCRIPTION
Sends a request to execute a prepared statement with given parameters, without waiting for the result(s).
This is similar to pg_send_query_params(3), but the command to be executed is specified by naming a previously-prepared statement, instead
of giving a query string. The function's parameters are handled identically to pg_execute(3). Like pg_execute(3), it will not work on
pre-7.4 versions of PostgreSQL.
PARAMETERS
o $connection
- PostgreSQL database connection resource. When $connection is not present, the default connection is used. The default connection
is the last connection made by pg_connect(3) or pg_pconnect(3).
o $stmtname
- The name of the prepared statement to execute. if "" is specified, then the unnamed statement is executed. The name must have
been previously prepared using pg_prepare(3), pg_send_prepare(3) or a PREPARE SQL command.
o $params
- An array of parameter values to substitute for the $1, $2, etc. placeholders in the original prepared query string. The number
of elements in the array must match the number of placeholders.
RETURN VALUES
Returns TRUE on success, FALSE on failure. Use pg_get_result(3) to determine the query result.
EXAMPLES
Example #1
Using pg_send_execute(3)
<?php
$dbconn = pg_connect("dbname=publisher") or die("Could not connect");
// Prepare a query for execution
if (!pg_connection_busy($dbconn)) {
pg_send_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');
$res1 = pg_get_result($dbconn);
}
// Execute the prepared query. Note that it is not necessary to escape
// the string "Joe's Widgets" in any way
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Joe's Widgets"));
$res2 = pg_get_result($dbconn);
}
// Execute the same prepared query, this time with a different parameter
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));
$res3 = pg_get_result($dbconn);
}
?>
SEE ALSO pg_prepare(3), pg_send_prepare(3), pg_execute(3).
PHP Documentation Group PG_SEND_EXECUTE(3)