diff options
Diffstat (limited to 'doc/src/sgml/ref/rollback.sgml')
-rw-r--r-- | doc/src/sgml/ref/rollback.sgml | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/doc/src/sgml/ref/rollback.sgml b/doc/src/sgml/ref/rollback.sgml new file mode 100644 index 0000000..79f508e --- /dev/null +++ b/doc/src/sgml/ref/rollback.sgml @@ -0,0 +1,112 @@ +<!-- +doc/src/sgml/ref/rollback.sgml +PostgreSQL documentation +--> + +<refentry id="sql-rollback"> + <indexterm zone="sql-rollback"> + <primary>ROLLBACK</primary> + </indexterm> + + <refmeta> + <refentrytitle>ROLLBACK</refentrytitle> + <manvolnum>7</manvolnum> + <refmiscinfo>SQL - Language Statements</refmiscinfo> + </refmeta> + + <refnamediv> + <refname>ROLLBACK</refname> + <refpurpose>abort the current transaction</refpurpose> + </refnamediv> + + <refsynopsisdiv> +<synopsis> +ROLLBACK [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ] +</synopsis> + </refsynopsisdiv> + + <refsect1> + <title>Description</title> + + <para> + <command>ROLLBACK</command> rolls back the current transaction and causes + all the updates made by the transaction to be discarded. + </para> + </refsect1> + + <refsect1> + <title>Parameters</title> + + <indexterm zone="sql-rollback-chain"> + <primary>chained transactions</primary> + </indexterm> + + <variablelist> + <varlistentry id="sql-rollback-transaction"> + <term><literal>WORK</literal></term> + <term><literal>TRANSACTION</literal></term> + <listitem> + <para> + Optional key words. They have no effect. + </para> + </listitem> + </varlistentry> + + <varlistentry id="sql-rollback-chain"> + <term><literal>AND CHAIN</literal></term> + <listitem> + <para> + If <literal>AND CHAIN</literal> is specified, a new (not aborted) + transaction is immediately started with the same transaction + characteristics (see <xref linkend="sql-set-transaction"/>) as the + just finished one. Otherwise, no new transaction is started. + </para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + + <refsect1> + <title>Notes</title> + + <para> + Use <link linkend="sql-commit"><command>COMMIT</command></link> to + successfully terminate a transaction. + </para> + + <para> + Issuing <command>ROLLBACK</command> outside of a transaction + block emits a warning and otherwise has no effect. <command>ROLLBACK AND + CHAIN</command> outside of a transaction block is an error. + </para> + </refsect1> + + <refsect1> + <title>Examples</title> + + <para> + To abort all changes: +<programlisting> +ROLLBACK; +</programlisting></para> + </refsect1> + + <refsect1> + <title>Compatibility</title> + + <para> + The command <command>ROLLBACK</command> conforms to the SQL standard. The + form <literal>ROLLBACK TRANSACTION</literal> is a PostgreSQL extension. + </para> + </refsect1> + + <refsect1> + <title>See Also</title> + + <simplelist type="inline"> + <member><xref linkend="sql-begin"/></member> + <member><xref linkend="sql-commit"/></member> + <member><xref linkend="sql-rollback-to"/></member> + </simplelist> + </refsect1> +</refentry> |