table of contents
DISCARD(7) | PostgreSQL 16.1 Documentation | DISCARD(7) |
NAME¶
DISCARD - discard session state
SYNOPSIS¶
DISCARD { ALL | PLANS | SEQUENCES | TEMPORARY | TEMP }
DESCRIPTION¶
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 DISCARD ALL variant subsumes all the others, and also resets additional state.
PARAMETERS¶
PLANS
Releases all cached query plans, forcing re-planning to
occur the next time the associated prepared statement is used.
SEQUENCES
Discards all cached sequence-related state, including
currval()/lastval() information and any preallocated sequence
values that have not yet been returned by nextval(). (See CREATE
SEQUENCE (CREATE_SEQUENCE(7)) for a description of preallocated
sequence values.)
TEMPORARY or TEMP
Drops all temporary tables created in the current
session.
ALL
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:
CLOSE ALL; SET SESSION AUTHORIZATION DEFAULT; RESET ALL; DEALLOCATE ALL; UNLISTEN *; SELECT pg_advisory_unlock_all(); DISCARD PLANS; DISCARD TEMP; DISCARD SEQUENCES;
NOTES¶
DISCARD ALL cannot be executed inside a transaction block.
COMPATIBILITY¶
DISCARD is a PostgreSQL extension.
2023 | PostgreSQL 16.1 |