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 命令。