pg_send_execute

(PHP 5 >= 5.1.0, PHP 7)

pg_send_executeSends a request to execute a prepared statement with given parameters, without waiting for the result(s)

Description

pg_send_execute ( resource $connection , string $stmtname , array $params ) : bool

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(), 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(). Like pg_execute(), it will not work on pre-7.4 versions of PostgreSQL.

Parameters

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() or pg_pconnect().

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(), pg_send_prepare() or a PREPARE SQL command.

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() to determine the query result.

Examples

Example #1 Using pg_send_execute()

<?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() - Submits a request to create a prepared statement with the given parameters, and waits for completion
  • pg_send_prepare() - Sends a request to create a prepared statement with the given parameters, without waiting for completion
  • pg_execute() - Sends a request to execute a prepared statement with given parameters, and waits for the result