Redrock Postgres 搜索 英文
版本: 9.3 / 9.4 / 9.5 / 9.6 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17

DISCARD

DISCARD — 丢弃会话状态

摘要

DISCARD { ALL | PLANS | SEQUENCES | TEMPORARY | TEMP }

说明

DISCARD 释放与数据库会话相关的内部资源。该命令可用于部分或完全重置会话状态。有几个子命令用于释放不同类型的资源;DISCARD ALL 变体包含所有其他变体,还可以重置其他状态。

参数

PLANS

释放所有缓存的查询计划,迫使下次使用关联的已准备语句时重新计划。

SEQUENCES

放弃所有已缓存的序列相关状态,包括 currval()/lastval() 信息及尚未通过 nextval() 返回的任何预分配序列值。(有关预分配序列值的说明,请参见 创建序列。)

TEMPORARYTEMP

删除当前会话中创建的所有临时表。

ALL

释放与当前会话关联的所有临时资源,并将会话重置为其初始状态。目前,这与执行以下语句序列的效果相同

CLOSE ALL;
SET SESSION AUTHORIZATION DEFAULT;
RESET ALL;
DEALLOCATE ALL;
UNLISTEN *;
SELECT pg_advisory_unlock_all();
DISCARD PLANS;
DISCARD TEMP;
DISCARD SEQUENCES;

注意事项

DISCARD ALL 不能在事务块内执行。

兼容性

DISCARDPostgreSQL 扩展。