PHP Australia Conference 2015

pg_execute

(PHP 5 >= 5.1.0)

pg_executeEnvía una solicitud para ejecutar una setencia preparada con parámetros dados, y espera el resultado

Descripción

resource pg_execute ([ resource $connection ], string $stmtname , array $params )

Envía una solicitud para ejecutar una sentencia preparada con parámetros dados, y espera el resultado.

pg_execute() es como pg_query_params(), pero el comando a ejecutar se especifica nombrando una sentencia preparada previamente, en lugar de dar una cadena de consulta. Esta característica permite que los comandos que se utilizan varias veces puedan ser analizados y planificados una sola vez, en lugar de cada vez que se ejecutan. La sentencia debe haber sido preparada previamente en la sesión actual. pg_execute() sólo se admite en PostgreSQL 7.4 o versiones superiores, se producirá un error al usar las versiones anteriores.

Los parámetros son idénticos a pg_query_params(), salvo que el nombre de una sentencia preparada se da en lugar de una cadena de consulta.

Parámetros

connection

Recurso de conexión de Base de datos PostgreSQL. Cuando la connection no está presente, la conexión por defecto se utiliza. La conexión por defecto es la última conexión realizada por pg_connect() o pg_pconnect().

stmtname

El nombre de la sentencia preparada para ejecutar. Si "" se especifica, la instrucción se ejecuta sin nombre. El nombre debe haber sido previamente preparado con pg_prepare(), pg_send_prepare() o un comando SQL PREPARE.

params

Una serie de valores de los parámetros para sustituir a los $1, $2, etc. Marcadores de posición en la cadena de consulta preparada original. El número de elementos del array debe coincidir con el número de marcadores de posición.

Advertencia

Los elementos se convierten en cadenas llamando a esta función.

Valores devueltos

Un recurso en el éxito del resultado de la consulta o FALSE en caso de error.

Ejemplos

Ejemplo #1 Usando pg_execute()

<?php
// Conectar a base de datos llamada "mary"
$dbconn pg_connect("dbname=mary");

// Preparar consulta para ejecución
$result pg_prepare($dbconn"my_query"'SELECT * FROM shops WHERE name = $1');

// Ejecutar consulta preparada. Tenga en cuenta que no es necesario escapar
// la cadena "Joe's Widgets" de ninguna manera
$result pg_execute($dbconn"my_query", array("Joe's Widgets"));

// Ejecutar la misma consulta preparada, esta vez con un parámetro diferente
$result pg_execute($dbconn"my_query", array("Clothes Clothes Clothes"));

?>

Ver también

  • 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_query_params() - Submits a command to the server and waits for the result, with the ability to pass parameters separately from the SQL command text.

add a note add a note

User Contributed Notes 1 note

up
0
nmmm at nmmm dot nu
8 years ago
I am not 100% sure in this, but pg_exec() could return 0 as Connection ID.

because of that i change some of my code like this:

$dbres = pg_exec($SQL);

if ($dbres === false){
        echo "DB is down";
        exit;
}else{
        //do something
}
To Top