pg_execute
(PHP 5 >= 5.1.0)
pg_execute — Запускает выполнение ранее подготовленного параметризованного запроса и ждет результат
Описание
$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 запроса
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с базами данных
- Расширения для работы с базами данных отдельных производителей
- PostgreSQL
- pg_affected_rows
- pg_cancel_query
- pg_client_encoding
- pg_close
- pg_connect_poll
- pg_connect
- pg_connection_busy
- pg_connection_reset
- pg_connection_status
- pg_consume_input
- pg_convert
- pg_copy_from
- pg_copy_to
- pg_dbname
- pg_delete
- pg_end_copy
- pg_escape_bytea
- pg_escape_identifier
- pg_escape_literal
- pg_escape_string
- pg_execute
- pg_fetch_all_columns
- pg_fetch_all
- pg_fetch_array
- pg_fetch_assoc
- pg_fetch_object
- pg_fetch_result
- pg_fetch_row
- pg_field_is_null
- pg_field_name
- pg_field_num
- pg_field_prtlen
- pg_field_size
- pg_field_table
- pg_field_type_oid
- pg_field_type
- pg_flush
- pg_free_result
- pg_get_notify
- pg_get_pid
- pg_get_result
- pg_host
- pg_insert
- pg_last_error
- pg_last_notice
- pg_last_oid
- pg_lo_close
- pg_lo_create
- pg_lo_export
- pg_lo_import
- pg_lo_open
- pg_lo_read_all
- pg_lo_read
- pg_lo_seek
- pg_lo_tell
- pg_lo_truncate
- pg_lo_unlink
- pg_lo_write
- pg_meta_data
- pg_num_fields
- pg_num_rows
- pg_options
- pg_parameter_status
- pg_pconnect
- pg_ping
- pg_port
- pg_prepare
- pg_put_line
- pg_query_params
- pg_query
- pg_result_error_field
- pg_result_error
- pg_result_seek
- pg_result_status
- pg_select
- pg_send_execute
- pg_send_prepare
- pg_send_query_params
- pg_send_query
- pg_set_client_encoding
- pg_set_error_verbosity
- pg_socket
- pg_trace
- pg_transaction_status
- pg_tty
- pg_unescape_bytea
- pg_untrace
- pg_update
- pg_version
Коментарии
I am not 100% sure in this, but pg_exec() could return 0 as Connection ID.
because of that i change some of my code like this:
$dbres = pg_exec($SQL);
if ($dbres === false){
echo "DB is down";
exit;
}else{
//do something
}