↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

已结束支持的版本: 7.4 / 7.3 / 7.2 / 7.1 / 7.0 / 6.5 / 6.4
历史版本。 PostgreSQL 7.1 已结束支持。 请参阅 当前版本手册.

pg_listen

pg_listen — 设置或更改异步 NOTIFY 消息的回调

大纲

pg_listen dbHandle notifyName callbackCommand

输入

dbHandle

指定一个有效的数据库句柄。

notifyName

指定要开始或停止监听的 notify 条件名。

callbackCommand

如果提供且非空,给出匹配的通知到达时要执行的命令字符串。

输出

None

描述

pg_listen 创建、更改或取消对来自 Postgres 后端的异步 NOTIFY 消息的监听请求。带 callbackCommand 参数时,会建立请求,或替换已存在请求的命令字符串。不带 callbackCommand 参数时,则取消先前的请求。

pg_listen 请求建立之后,每当带有给定名称的 NOTIFY 消息从后端到达时,就执行指定的命令字符串。任何 Postgres 客户端应用程序发出引用该名称的 NOTIFY 命令时都会发生这种情况。(注意,该名称可以是数据库中已存在关系的名称,但不必一定如此。)命令字符串在 Tcl 空闲循环中执行。这是用 Tk 编写的应用程序的正常空闲状态。在非 Tk 的 Tcl shell 中,可以执行 update 或 vwait 来进入空闲循环。

使用 pg_listen 时,不应直接调用 SQL 语句 LISTEN 或 UNLISTEN。Pgtcl 会替你发出这些语句。但如果想自己发送 NOTIFY 消息,可以用 pg_exec 调用 SQL 的 NOTIFY 语句。

报告文档问题

阅读 上游文档. 反馈更正前请先核对 当前版本手册.