1
0
mirror of https://github.com/php/doc-ru.git synced 2026-03-27 01:02:19 +01:00
Files
archived-doc-ru/reference/pgsql/functions/pg-execute.xml
2021-01-05 20:16:26 +03:00

149 lines
6.2 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: b95d28e6ec86e4a71e012737d36ebdc1cf009180 Maintainer: mch Status: ready -->
<!-- Reviewed: yes Maintainer: lex -->
<!-- $Revision$ -->
<!-- splitted from ./en/functions/pgsql.xml, last change in rev 1.2 -->
<refentry xml:id="function.pg-execute" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>pg_execute</refname>
<refpurpose>Запускает выполнение ранее подготовленного параметризованного запроса и ждёт результат</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>resource</type><type>false</type></type><methodname>pg_execute</methodname>
<methodparam choice="opt"><type>resource</type><parameter>connection</parameter></methodparam>
<methodparam><type>string</type><parameter>stmtname</parameter></methodparam>
<methodparam><type>array</type><parameter>params</parameter></methodparam>
</methodsynopsis>
<para>
Запускает выполнение ранее подготовленного параметризованного запроса
и ждёт результат.
</para>
<para>
<function>pg_execute</function> аналог функции <function>pg_query_params</function>,
только вместо строки с запросом принимает имя предварительно подготовленного
SQL-запроса. Это позволяет многократно выполнять единожды созданные запросы с
различными параметрами. Сам запрос должен быть заранее подготовлен в текущей сессии.
<function>pg_execute</function> поддерживается PostgreSQL версии 7.4 и выше.
Функция не будет работать на соединениях с сервером ранних версий.
</para>
<para>
Аргументы функции те же, что и у <function>pg_query_params</function>, за исключением
имени предварительно составленного запроса, который передаётся вместо строки с запросом.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>connection</parameter></term>
<listitem>
<para>
Ресурс подключения к базе данных PostgreSQL. Если параметр
<parameter>connection</parameter> не задан, будет использовано
подключение по умолчанию - последнее соединение, открытое функцией
<function>pg_connect</function> или <function>pg_pconnect</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>stmtname</parameter></term>
<listitem>
<para>
Имя подготовленного к исполнению запроса. Если передана пустая строка "",
будет выполнен безымянный запрос. Имя и содержимое запроса должны быть
подготовлены функцией <function>pg_prepare</function>,
<function>pg_send_prepare</function> либо с помощью SQL-команды <literal>PREPARE</literal>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>params</parameter></term>
<listitem>
<para>
Массив значений параметров запроса для замены псевдопеременных $1, $2 и т.д.
в исходной строке запроса. Количество элементов массива должно точно совпадать с
количеством псевдопеременных.
</para>
<warning>
<para>
Элементы массива будут преобразованы в строки.
</para>
</warning>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Ресурс результата выполнения запроса при успешном выполнении. &return.falseforfailure;.</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <function>pg_execute</function></title>
<programlisting role="php">
<![CDATA[
<?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"));
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>pg_prepare</function></member>
<member><function>pg_send_prepare</function></member>
<member><function>pg_query_params</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->