LISTEN(7) | SQL Commands | LISTEN(7) |
LISTEN - 監聽一個通知
LISTEN name
LISTEN 將當前會話註冊爲通知條件 name
當執行了命令 NOTIFY name
後,不管是此會話還是其他聯接到同一數據庫的會話執行的,
所有正在監聽此通知條件的會話都將收到通知,
並且接下來每個會話將通知與其相連的前端應用.請參考
NOTIFY 獲取更多信息.
使用 UNLISTEN
命令,可以將一個會話內已註冊的通知條件刪除.
同樣,會話退出時自動刪除該會話正在監聽的已註冊通知條件.
前端應用檢測通知事件的方法取決於
PostgreSQL
應用使用的編程接口.
如果使用基本的libpq庫,
應用將 LISTEN 當作普通 SQL
命令使用,而且必須週期地調用
PQnotifies
過程來檢測是否有通知到達.
其他像libpgtcl接口提供了更高級的控制通知事件的方法;實際上,
使用libpgtcl,應用程序員不應該直接使用
LISTEN 或 UNLISTEN.
請參考你使用的接口的文檔獲取更多細節.
NOTIFY [notify(7)] 的手冊頁包含更廣泛的關於 LISTEN 和 NOTIFY 的使用的討論.
在 psql 裏配製和執行一個監聽/通知序列:
LISTEN virtual; NOTIFY virtual; Asynchronous notification "virtual" received from server process with PID 8448.
在 SQL 標準裏沒有 LISTEN
NOTIFY [notify(7)], UNLISTEN [unlisten(l)]
Postgresql 中文網站 何偉平 <laser@pgsqldb.org>
本頁面中文版由中文
man 手冊頁計劃提供。
中文 man
手冊頁計劃:https://github.com/man-pages-zh/manpages-zh
2003-11-02 | SQL - Language Statements |