pg_send_execute
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
pg_send_execute — Envia uma solicitação para executar uma instrução preparada com determinados parâmetros, sem esperar pelo(s) resultado(s)
Descrição
Envia uma solicitação para executar uma instrução preparada com determinados parâmetros, sem esperar pelo(s) resultado(s).
Isto é semelhante a pg_send_query_params(), mas o comando a ser executado é especificado nomeando uma instrução previamente preparada, em vez de fornecer uma string de consulta. Os parâmetros da função são tratados de forma idêntica a pg_execute(). Assim como pg_execute(), não funcionará em versões anteriores à 7.4 do PostgreSQL.
Parâmetros
connection
-
Uma instância de PgSql\Connection.
statement_name
-
O nome da instrução preparada a ser executada. Se "" for especificado, a instrução sem nome será executada. O nome deve ter sido preparado previamente usando pg_prepare(), pg_send_prepare() ou um comando SQL
PREPARE
. params
-
Um array de valores de parâmetros para substituir os espaços reservados $1, $2, etc. na string de consulta preparada original. O número de elementos no array deve corresponder ao número de espaços reservados.
Valor Retornado
Retorna true
em caso de sucesso, false
ou 0
em caso de falha. Use pg_get_result()
para determinar o resultado da consulta.
Registro de Alterações
Versão | Descrição |
---|---|
8.1.0 |
O parâmetro connection agora espera uma instância de PgSql\Connection;
anteriormente, um resource era esperado.
|
Exemplos
Example #1 Usando pg_send_execute()
<?php
$dbconn = pg_connect("dbname=publisher") or die("Não foi possível conectar");
// Preparar uma consulta para execução
if (!pg_connection_busy($dbconn)) {
pg_send_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');
$res1 = pg_get_result($dbconn);
}
// Execute a consulta preparada. Observe que não é necessário escapar
// 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 a mesma consulta preparada, desta vez com um parâmetro diferente
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));
$res3 = pg_get_result($dbconn);
}
?>
Veja Também
- pg_prepare() - Envia uma solicitação ao servidor para criar uma instrução preparada com os parâmetros fornecidos e aguarda a conclusão
- pg_send_prepare() - Envia uma solicitação para criar uma instrução preparada com os parâmetros fornecidos, sem esperar pela conclusão
- pg_execute() - Envia uma solicitação para executar uma instrução preparada com determinados parâmetros e aguarda o resultado