mirror of
https://github.com/postgres/postgres.git
synced 2025-12-06 00:02:13 +03:00
The new DISCARD SEQUENCES option was inadequately described, and hadn't been mentioned at all in the initial Description paragraph. Rather than rectifying the latter the hard way, it seemed better to rewrite the description as a summary, instead of having it basically duplicate statements made under Parameters. Be more consistent about the ordering of the options, too.
119 lines
2.8 KiB
Plaintext
119 lines
2.8 KiB
Plaintext
<!--
|
|
doc/src/sgml/ref/discard.sgml
|
|
PostgreSQL documentation
|
|
-->
|
|
|
|
<refentry id="SQL-DISCARD">
|
|
<indexterm zone="sql-discard">
|
|
<primary>DISCARD</primary>
|
|
</indexterm>
|
|
|
|
<refmeta>
|
|
<refentrytitle>DISCARD</refentrytitle>
|
|
<manvolnum>7</manvolnum>
|
|
<refmiscinfo>SQL - Language Statements</refmiscinfo>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>DISCARD</refname>
|
|
<refpurpose>discard session state</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<synopsis>
|
|
DISCARD { ALL | PLANS | SEQUENCES | TEMPORARY | TEMP }
|
|
</synopsis>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
|
|
<para>
|
|
<command>DISCARD</> releases internal resources associated with a
|
|
database session. This command is useful for partially or fully
|
|
resetting the session's state. There are several subcommands to
|
|
release different types of resources; the <command>DISCARD ALL</>
|
|
variant subsumes all the others, and also resets additional state.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Parameters</title>
|
|
|
|
<variablelist>
|
|
|
|
<varlistentry>
|
|
<term><literal>PLANS</literal></term>
|
|
<listitem>
|
|
<para>
|
|
Releases all cached query plans, forcing re-planning to occur
|
|
the next time the associated prepared statement is used.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><literal>SEQUENCES</literal></term>
|
|
<listitem>
|
|
<para>
|
|
Discards all cached sequence-related state,
|
|
including <function>currval()</>/<function>lastval()</>
|
|
information and any preallocated sequence values that have not
|
|
yet been returned by <function>nextval()</>.
|
|
(See <xref linkend="sql-createsequence"> for a description of
|
|
preallocated sequence values.)
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><literal>TEMPORARY</literal> or <literal>TEMP</literal></term>
|
|
<listitem>
|
|
<para>
|
|
Drops all temporary tables created in the current session.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><literal>ALL</literal></term>
|
|
<listitem>
|
|
<para>
|
|
Releases all temporary resources associated with the current
|
|
session and resets the session to its initial state.
|
|
Currently, this has the same effect as executing the following sequence
|
|
of statements:
|
|
<programlisting>
|
|
SET SESSION AUTHORIZATION DEFAULT;
|
|
RESET ALL;
|
|
DEALLOCATE ALL;
|
|
CLOSE ALL;
|
|
UNLISTEN *;
|
|
SELECT pg_advisory_unlock_all();
|
|
DISCARD PLANS;
|
|
DISCARD SEQUENCES;
|
|
DISCARD TEMP;
|
|
</programlisting></para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Notes</title>
|
|
|
|
<para>
|
|
<command>DISCARD ALL</> cannot be executed inside a transaction block.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Compatibility</title>
|
|
|
|
<para>
|
|
<command>DISCARD</command> is a <productname>PostgreSQL</productname> extension.
|
|
</para>
|
|
</refsect1>
|
|
</refentry>
|