UNLISTEN
描述
UNLISTEN 用于删除一个现有的已注册 NOTIFY 事件。UNLISTEN 取消当前 PostgreSQL 会话中所有对通知条件 name 的监听。特殊的条件通配符 * 取消对当前会话的所有通知条件的监听。
NOTIFY 包含一些对 LISTEN 和 NOTIFY 的更广泛的讨论。
参数
- name
通知条件名称(任意标识符)
- *
所有此后端当前正在监听的通知条件都将被清除
注意
即使取消一个你没有监听的事件,后端也不会报错。
每个后端在退出时都会自动执行 UNLISTEN *
例子
注册一个:
LISTEN virtual;
NOTIFY virtual;
Asynchronous notification "virtual" received from server process with PID 8448.
一旦执行了 UNLISTEN ,以后的 NOTIFY 命令都将被忽略:
UNLISTEN virtual;
NOTIFY virtual;
-- 收不到 NOTIFY 事件
兼容性
SQL 标准里没有 UNLISTEN 命令。