(PHP 5 >= 5.1.0, PHP 7, PHP 8)
pg_execute — Envia uma solicitação para executar uma instrução preparada com determinados parâmetros e aguarda o resultado
Envia uma solicitação para executar uma instrução preparada com determinados parâmetros e aguarda o resultado.
pg_execute() é como pg_query_params(), mas o comando a ser executado é especificado nomeando uma instrução previamente preparada, em vez de fornecer uma string de consulta. Este recurso permite que comandos que serão usados repetidamente sejam analisados e planejados apenas uma vez, em vez de cada vez que forem executados. A declaração deve ter sido preparada anteriormente na sessão atual. pg_execute() é suportado apenas em conexões PostgreSQL 7.4 ou superior; falhará ao usar versões anteriores.
Os parâmetros são idênticos a pg_query_params(), exceto que o nome de uma instrução preparada é fornecido em vez de uma string de consulta.
connection
Uma instância de PgSql\Connection.
Quando o parâmetro connection
não for especificado, a conexão padrão será usada.
A conexão padrão é a última conexão feita por pg_connect()
ou pg_pconnect().
A partir do PHP 8.1.0, usar a conexão padrão tornou-se defasado.
stmtname
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.
Os elementos são convertidos em strings chamando esta função.
Uma instância PgSql\Result em caso de sucesso, ou false
em caso de falha.
Versão | Descrição |
---|---|
8.1.0 | Agora retorna uma instância de PgSql\Result; anteriormente, um resource era retornado. |
8.1.0 |
O parâmetro connection agora espera uma instância de PgSql\Connection;
anteriormente, um resource era esperado.
|
Exemplo #1 Usando pg_execute()
<?php
// Conecta com um banco de dados chamado "mary"
$dbconn = pg_connect("dbname=mary");
// Prepara a consulta para execução
$result = pg_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');
// Executa a consulta preparada. Observe que não é necessário escapar a
// string "Joe's Widgets" de forma alguma
$result = pg_execute($dbconn, "my_query", array("Joe's Widgets"));
// Execute a mesma consulta preparada, desta vez com um parâmetro diferente
$result = pg_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));
?>