(PHP 5 >= 5.1.0, PHP 7, PHP 8)
pg_send_execute — Запускает предварительно подготовленный SQL-запрос и передаёт ему параметры; не ожидает возвращаемого результата
Запускает предварительно подготовленный SQL-запрос и передаёт ему параметры; не ожидает возвращаемого результата.
Работает аналогично функции pg_send_query_params(), только вместо строки с запросом принимает имя предварительно подготовленного SQL-запроса. Аргументы функции обрабатываются так же, как и в функции pg_execute(). Как и pg_execute() эта функция не будет работать на соединениях с серверами PostgreSQL версий ниже 7.4.
connection
Экземпляр класса PgSql\Connection.
statement_name
Имя подготовленного к исполнению запроса. Если передана пустая строка "",
будет выполнен безымянный запрос. Имя и содержимое запроса должны быть
подготовлены функцией pg_prepare(),
pg_send_prepare() либо с помощью SQL-команды
PREPARE
.
params
Массив значений параметров запроса для замены псевдопеременных $1, $2 и т.д. в исходной строке запроса. Количество элементов массива должно точно совпадать с количеством псевдопеременных.
Возвращает true
в случае успешного выполнения, false
или 0
в случае возникновения ошибки.
Для получения результата запроса используйте функцию
pg_get_result().
Версия | Описание |
---|---|
8.1.0 |
Параметр connection теперь ожидает экземпляр
класса PgSql\Connection; раньше параметр ожидал ресурс (resource).
|
Пример #1 Пример использования pg_send_execute()
<?php
$dbconn = pg_connect("dbname=publisher") or die("Could not connect");
// Подготовка запроса
if (!pg_connection_busy($dbconn)) {
pg_send_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');
$res1 = pg_get_result($dbconn);
}
// Запуск запроса на выполнение. Стоит отметить, что нет необходимости экранировать
// спецсимволы в строке "Joe's Widgets"
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Joe's Widgets"));
$res2 = pg_get_result($dbconn);
}
// Запуск на выполнение того же запроса, но с другим параметром
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));
$res3 = pg_get_result($dbconn);
}
?>