PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 17.1 » Référence » Commandes SQL » DISCARD

DISCARD

DISCARD — Annuler l'état de la session

Synopsis

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

Description

DISCARD libère les ressources internes associées avec une session de la base de données. Ces ressources sont normalement libérées à la fin de la session. Cette commande est intéressante pour réinitialiser l'état de la session partiellement ou complètement. Il existe plusieurs sous-commandes pour relâcher différents types de ressources. La variante DISCARD ALL comprend toutes les autres, et réinitialise aussi un état supplémentaire.

Paramètres

PLANS

Supprime tous les plans de requête en cache, forçant une nouvelle planification la prochaine fois que la requête préparée est utilisée.

SEQUENCES

Supprime du cache l'état des séquences, ceci incluant les informations currval()/lastval() ainsi que toutes les valeurs préallouées des séquences, qui n'ont pas encore été renvoyées par nextval(). (Voir CREATE SEQUENCE pour une description des valeurs préallouées des séquences.)

TEMPORARY or TEMP

Supprime toutes les tables temporaires créées dans la session actuelle.

ALL

Libère les ressources temporaires associées à cette session et réinitialise une session à son état d'origine. Actuellement, ceci a le même effet que la séquence d'instructions suivantes :

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 ne peut pas être utilisé dans un bloc de transaction.

Compatibilité

DISCARD est une extension PostgreSQL.