PostgreSQL DISCARD

2021-09-10 14:18 更新

DISCARD — 拋棄會(huì)話狀態(tài)

大綱

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

描述

DISCARD釋放與一個(gè)數(shù)據(jù)庫會(huì)話相關(guān)的內(nèi)部資源。 這個(gè)命令有助于部分或者完全重置該會(huì)話的狀態(tài)。有幾個(gè)子命令來 釋放不同類型的資源。DISCARD ALL變體把所有 其他形式都包含在內(nèi),并且還會(huì)重置額外的狀態(tài)。

參數(shù)

PLANS

釋放所有已緩存的查詢計(jì)劃,強(qiáng)制在下一次使用相關(guān)預(yù)備語句時(shí) 重新做計(jì)劃。

SEQUENCES

丟棄所有已緩存的序列相關(guān)的狀態(tài),包括 currval()/lastval()信息 以及任何還未被nextval()返回的預(yù)分配的 序列值(預(yù)分配序列值的描述請(qǐng)見 CREATE SEQUENCE);

TEMPORARY or TEMP

刪除當(dāng)前會(huì)話中創(chuàng)建的所有臨時(shí)表。

ALL

釋放與當(dāng)前會(huì)話相關(guān)的所有臨時(shí)資源并且把會(huì)話重置為初始狀態(tài)。 當(dāng)前這和執(zhí)行以下語句序列的效果相同:

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

注解

DISCARD ALL不能在事務(wù)塊內(nèi)執(zhí)行。

兼容性

DISCARD是一種 PostgreSQL擴(kuò)展。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)