Запускает выполнение ранее подготовленного параметризованного запроса и ждет результат


(PHP 5 >= 5.1.0)

pg_executeЗапускает выполнение ранее подготовленного параметризованного запроса и ждет результат

Описание

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

Запускает выполнение ранее подготовленного параметризованного запроса и ждет результат.

pg_execute() аналог функции pg_query_params(), только вместо строки с запросом принимает имя предварительно подготовленного SQL запроса. Это позволяет многократно выполнять единожды созданные запросы с различными параметрами. Сам запрос должен быть заранее подготовлен в текущей сессии. pg_execute() поддерживается PostgreSQL версии 7.4 и выше. Функция не будет работать на соединениях с сервером ранних версий.

Аргументы функции те же, что и у pg_query_params(), за исключением имени предварительно составленного запроса, который передается вместо строки с запросом.

Список параметров

connection

Ресурс подключения к базе данных PostgreSQL. Если параметр connection не задан, будет использовано подключение по умолчанию - последнее соединение, открытое функцией pg_connect() или pg_pconnect().

stmtname

Имя подготовленного к исполнению запроса. Если передана пустая строка "", будет выполнен безымянный запрос. Имя и содержимое запроса должны быть подготовлены функцией pg_prepare(), pg_send_prepare() либо с помощью SQL-команды PREPARE.

params

Массив значений параметров запроса для замены псевдопеременных $1, $2 и т.д. в исходной строке запроса. Количество элементов массива должно точно совпадать с количеством псевдопеременных.

Внимание

Элементы массива будут преобразованы в строки.

Возвращаемые значения

Ресурс результата выполнения запроса при успешном выполнении. или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Пример использования pg_execute()

<?php
// Подключение к базе данных "mary"
$dbconn pg_connect("dbname=mary");

// Подготовка запроса
$result pg_prepare($dbconn"my_query"'SELECT * FROM shops WHERE name = $1');

// Запуск запроса на выполнение. Стоит отметить, что нет необходимости экранировать 
// спецсимволы в строке "Joe's Widgets"
$result pg_execute($dbconn"my_query", array("Joe's Widgets"));

// Запуск на выполнение того же запроса, но с другим параметром 
$result pg_execute($dbconn"my_query", array("Clothes Clothes Clothes"));

?>

Смотрите также

  • pg_prepare() - Посылает запрос на создание параметризованного SQL выражения и ждет его завершения
  • pg_send_prepare() - Посылает запрос на создание параметризованного SQL выражения; не ожидает его завершения
  • pg_query_params() - Посылает параметризованный запрос на сервер, параметры передаются отдельно от текста SQL запроса