pg_execute
(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
Descrição
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.
Parâmetros
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().WarningA 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.
WarningOs elementos são convertidos em strings chamando esta função.
Valor Retornado
Uma instância PgSql\Result em caso de sucesso, ou false
em caso de falha.
Registro de Alterações
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.
|
Exemplos
Example #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"));
?>
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_query_params() - Envia um comando ao servidor e aguarda o resultado, com a capacidade de passar parâmetros separadamente do texto do comando SQL