pg_send_prepare
(PHP 5 >= 5.1.0, PHP 7)
pg_send_prepare — Посылает запрос на создание параметризованного SQL выражения; не ожидает его завершения
Описание
$connection
, string $stmtname
, string $query
)Посылает запрос на создание параметризованного SQL выражения и не ждет его завершения.
Это асинхронная версия функции pg_prepare():
она возвращает TRUE
, если удалось отправить запрос, FALSE
в
противном случае. После успешной отправки, воспользуйтесь функцией
pg_get_result(), чтобы узнать, создалось ли требуемое
SQL выражение. Аргументы функции обрабатываются так же, как в
pg_prepare(). Функция не будет работать
с серверами PostgreSQL версий ниже 7.4.
Список параметров
-
connection
-
Ресурс подключения к базе данных PostgreSQL. Если параметр
connection
не задан, будет использовано подключение по умолчанию - последнее соединение, открытое функцией pg_connect() или pg_pconnect(). -
stmtname
-
Имя создаваемой заготовки. Должно быть уникальным в пределах сессии. Если задана пустая строка, будет создано безымянное SQL выражение. При этом оно перезапишет уже существующее безымянное выражение, определенное ранее.
-
query
-
Параметризованный SQL запрос. Должен содержать только одно выражение (несколько выражений разделенных точкой с запятой не поддерживаются). Если в запрос будут передаваться параметры, то они заменят псевдопеременные $1, $2 и т.д.
Возвращаемые значения
TRUE
, если удалось отправить запрос, FALSE
в
противном случае. После успешной отправки, воспользуйтесь функцией
pg_get_result(), чтобы узнать, создалось ли требуемое
SQL выражение.
Примеры
Пример #1 Пример использования pg_send_prepare()
<?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);
}
?>
Смотрите также
- pg_connect() - Открывает соединение с базой данных PostgreSQL
- pg_pconnect() - Открывает постоянное соединение с сервером PostgreSQL
- pg_execute() - Запускает выполнение ранее подготовленного параметризованного запроса и ждет результат
- pg_send_execute() - Запускает предварительно подготовленный SQL запрос и передает ему параметры; не ожидает возвращаемого результата
- pg_send_query_params() - Посылает параметризованный запрос на сервер, не ожидает возвращаемого результата
- 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
Коментарии
404 Not Found