更新时间:2025-10-23 GMT+08:00

DEALLOCATE

功能描述

用于删除前面编写的预备语句。

注意事项

如果用户没有明确删除一个预备语句,那么它将在会话结束的时候被删除。

语法格式

{DEALLOCATE | DROP}  PREPARE name;

参数说明

name

将要删除的预备语句。

示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
--创建q1,q2,q3三个预备语句,先删除q1,再删除所有预备语句。
m_db=# SELECT name, statement, parameter_types FROM pg_prepared_statements;
 name | statement | parameter_types 
------+-----------+-----------------
(0 rows)

m_db=# PREPARE q1 from  'SELECT 1 AS a';
PREPARE
m_db=# PREPARE q2 from 'SELECT 1 AS a';
PREPARE
m_db=# PREPARE q3 from 'SELECT 1 AS a';
PREPARE
m_db=# SELECT name, statement, parameter_types FROM pg_prepared_statements;
 name |          statement           | parameter_types 
------+------------------------------+-----------------
 q1   | PREPARE q1 AS SELECT 1 AS a; | {}
 q3   | PREPARE q3 AS SELECT 1 AS a; | {}
 q2   | PREPARE q2 AS SELECT 1 AS a; | {}
(3 rows)

m_db=# DEALLOCATE PREPARE q1;
DEALLOCATE
m_db=# SELECT name, statement, parameter_types FROM pg_prepared_statements;
 name |          statement           | parameter_types 
------+------------------------------+-----------------
 q3   | PREPARE q3 AS SELECT 1 AS a; | {}
 q2   | PREPARE q2 AS SELECT 1 AS a; | {}
(2 rows)