登录
UNLISTEN
UNLISTEN — 停止侦听通知
概要
UNLISTEN { channel | * }
说明
UNLISTEN
用于移除NOTIFY
事件的现有注册。UNLISTEN
取消当前PostgreSQL会话作为名为*channel
*的通知通道上的侦听器的任何现有注册。特殊通配符*
取消当前会话的所有侦听器注册。
NOTIFY中包含关于使用LISTEN
和NOTIFY
的更广泛讨论。
参数
channel
通知通道的名称(任何标识符)。
*
此会话的所有当前侦听注册都将被清除。
注释
你可以取消侦听你未侦听的内容;不会出现警告或错误。
在每个会话的末尾,将自动执行UNLISTEN *
。
已执行UNLISTEN
的事务无法为两阶段提交做准备。
示例
进行注册
LISTEN virtual;
NOTIFY virtual;
Asynchronous notification "virtual" received from server process with PID 8448.
一旦执行UNLISTEN
,将忽略进一步的NOTIFY
消息
UNLISTEN virtual;
NOTIFY virtual;
-- no NOTIFY event is received
兼容性
SQL 标准中没有UNLISTEN
命令。