| <!-- |
| $PostgreSQL: pgsql/doc/src/sgml/ref/execute.sgml,v 1.16 2008/11/14 10:22:47 petere Exp $ |
| PostgreSQL documentation |
| --> |
| |
| <refentry id="SQL-EXECUTE"> |
| <refmeta> |
| <refentrytitle id="sql-execute-title">EXECUTE</refentrytitle> |
| <manvolnum>7</manvolnum> |
| <refmiscinfo>SQL - Language Statements</refmiscinfo> |
| </refmeta> |
| |
| <refnamediv> |
| <refname>EXECUTE</refname> |
| <refpurpose>execute a prepared statement</refpurpose> |
| </refnamediv> |
| |
| <indexterm zone="sql-execute"> |
| <primary>EXECUTE</primary> |
| </indexterm> |
| |
| <indexterm zone="sql-execute"> |
| <primary>prepared statements</primary> |
| <secondary>executing</secondary> |
| </indexterm> |
| |
| <refsynopsisdiv> |
| <synopsis> |
| EXECUTE <replaceable class="PARAMETER">name</replaceable> [ ( <replaceable class="PARAMETER">parameter</replaceable> [, ...] ) ] |
| </synopsis> |
| </refsynopsisdiv> |
| |
| <refsect1> |
| <title>Description</title> |
| |
| <para> |
| <command>EXECUTE</command> is used to execute a previously prepared |
| statement. Since prepared statements only exist for the duration of a |
| session, the prepared statement must have been created by a |
| <command>PREPARE</command> statement executed earlier in the |
| current session. |
| </para> |
| |
| <para> |
| If the <command>PREPARE</command> statement that created the statement |
| specified some parameters, a compatible set of parameters must be |
| passed to the <command>EXECUTE</command> statement, or else an |
| error is raised. Note that (unlike functions) prepared statements are |
| not overloaded based on the type or number of their parameters; the |
| name of a prepared statement must be unique within a database session. |
| </para> |
| |
| <para> |
| For more information on the creation and usage of prepared statements, |
| see <xref linkend="sql-prepare" endterm="sql-prepare-title">. |
| </para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Parameters</title> |
| |
| <variablelist> |
| <varlistentry> |
| <term><replaceable class="PARAMETER">name</replaceable></term> |
| <listitem> |
| <para> |
| The name of the prepared statement to execute. |
| </para> |
| </listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><replaceable class="PARAMETER">parameter</replaceable></term> |
| <listitem> |
| <para> |
| The actual value of a parameter to the prepared statement. This |
| must be an expression yielding a value that is compatible with |
| the data type of this parameter, as was determined when the |
| prepared statement was created. |
| </para> |
| </listitem> |
| </varlistentry> |
| </variablelist> |
| </refsect1> |
| |
| <refsect1> |
| <title>Outputs</title> |
| <para> |
| The command tag returned by <command>EXECUTE</command> |
| is that of the prepared statement, and not <literal>EXECUTE</>. |
| </para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Examples</> |
| <para> |
| Examples are given in the <xref linkend="sql-prepare-examples" |
| endterm="sql-prepare-examples-title"> section of the <xref |
| linkend="sql-prepare" endterm="sql-prepare-title"> documentation. |
| </para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Compatibility</title> |
| |
| <para> |
| The SQL standard includes an <command>EXECUTE</command> statement, |
| but it is only for use in embedded SQL. This version of the |
| <command>EXECUTE</command> statement also uses a somewhat different |
| syntax. |
| </para> |
| </refsect1> |
| |
| <refsect1> |
| <title>See Also</title> |
| |
| <simplelist type="inline"> |
| <member><xref linkend="sql-deallocate" endterm="sql-deallocate-title"></member> |
| <member><xref linkend="sql-prepare" endterm="sql-prepare-title"></member> |
| </simplelist> |
| </refsect1> |
| </refentry> |