| PostgreSQL | ||
|---|---|---|
| 上一页 | 下一页 | |
UNLISTEN — 停止监听通知信息
UNLISTEN { notifyname | * }
UNLISTEN 用于删除一个现有的已注册的 NOTIFY .UNLISTEN 取消当前 Postgres会话的中所有对通知条件 notifyname 监听.特殊的条件通配符 "*" 则取消对当前会话的所有通知条件的监听.
NOTIFY 包含一个对LISTEN 和 NOTIFY 的使用更广泛的讨论.
classname 不必是一个有效的表名,而可以是任何少于32字符的有效字串名.
如果你 UNLISTEN 一个你没有监听的事件,后端不会报错.每个后端在退出时都会自动执行 UNLISTEN * .
在一些早期的 Postgres 版本中,一个不代表一个具体表的 classname (表名)必须用双引号引起,这个限制在目前版本中已经不存在了.
提交一个现存的注册:
postgres=> LISTEN virtual; LISTEN postgres=> NOTIFY virtual; NOTIFY ASYNC NOTIFY of 'virtual' from backend pid '12317' received
一旦执行了 UNLISTEN,以后的 NOTIFY 命令将被忽略:
postgres=> UNLISTEN virtual; UNLISTEN postgres=> NOTIFY virtual; NOTIFY -- notice no NOTIFY event is received
在 SQL92 里没有 UNLISTEN .
| 上一页 | 首页 | 下一页 |
| TRUNCATE | 开头 | UPDATE |