DISCARD
大纲
DISCARD { ALL | PLANS | TEMPORARY | TEMP }
描述
DISCARD释放与数据库会话相关的内部资源。这些资源通常在会话结束时释放。
DISCARD TEMP删除所有在当前会话中创建的临时表。DISCARD PLANS释放所有的内部缓存查询计划。
DISCARD ALL重置一个会话到初始状态,丢弃临时资源和新设置的本地会话的改变。
参数
- TEMPORARY or TEMP
删除在当前会话中创建的所有的临时表。
- PLANS
释放所有缓存的查询计划。
- ALL
释放所有与当前会话相关的临时资源并重置到其初始状态。
当前,这与执行以下语句序列有相同的效果:
SET SESSION AUTHORIZATION DEFAULT;
RESET ALL;
DEALLOCATE ALL;
CLOSE ALL;
UNLISTEN *;
SELECT pg_advisory_unlock_all();
DISCARD PLANS;
DISCARD TEMP;
说明
DISCARD ALL在一个事务内部模块中不能被执行。
兼容性
DISCARD是一个PostgreSQL扩展。