GB
| BIG5
首頁
> 數據庫 > 其它 > 正文
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-LISTEN
編譯:何偉平 laser@zhengmai.com.cn (2001-04-21 22:02:41)
LISTEN
名稱
LISTEN 監聽一個通知條件的響應信息
語法
LISTEN name
輸入
name
通知條件名.
輸出
LISTEN
成功完成注冊的返回信息.
NOTICE Async_Listen: We are already listening on name
如果端已經注冊了該通知條件.
描述
LISTEN 將當前 Postgres 端注冊為通知條件 name 的監聽器.
當執行了命令 NOTIFY name ,不管是此端(進程)或者是其他一個聯接到同一數據庫的端(進程)執行的,所有正在監聽此通知條件的端(進程)都將收到通知,並且接下來每個端將通知與其相連的前端應用.請參考 NOTIFY 獲取更多信息.
使用 UNLISTEN 命令,可以將一個端內已注冊的通知條件刪除.同樣,端進程退出時自動刪除該端正在監聽的已注冊通知條件.
前端應用檢測通知事件的方法取決 Postgres 應用使用的編程接口.如果使用基本的 libpq 庫,應用將 LISTEN 當作普通 SQL 命令使用,而且必須周期地調用 PQnotifies 過程來檢測是否有通知到達.其他像 libpgtcl 接口提供了更高級的控制通知事件的方法;實際上,使用 libpgtcl ,應用程序員不應該直接使用 LISTEN 或 UNLISTEN .請參考你使用的庫的文檔獲取更多細節.
NOTIFY 的手冊頁包含更廣泛的關 LISTEN 和NOTIFY 的使用的討論.
注意
name 可以是任何可以作為名稱有效的字符串;它不需要與任何實際表相對應.如果 name 被雙引號包圍,它甚至可以不是一個有效的語句串,而可以是任何小31字符的字符串.
一些以前的 Postgres 版本中,如果 name 不與任何現存的表名對應就必須用雙引號括起來.不管語意上是否正確.現在不再有這個限制了.
用法
在 psql 裡配制和執行一個監聽/通知序列:
LISTEN virtual;
NOTIFY virtual;
Asynchronous NOTIFY 'virtual' from backend with pid '8448' received.
兼容性
SQL92
在 SQL92 中沒有 LISTEN. (
http://www.fanqiang.com
)
進入【
UNIX論壇
】
相關文章
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-VACUUM
(2001-04-21 22:16:33)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-UPDATE
(2001-04-21 22:16:12)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-UNLISTEN
(2001-04-21 22:15:44)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-TRUNCATE
(2001-04-21 22:15:24)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-SHOW
(2001-04-21 22:15:01)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-SET
(2001-04-21 22:14:42)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-SELECT INTO
(2001-04-21 22:14:19)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-SELECT
(2001-04-21 22:14:01)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-ROLLBACK
(2001-04-21 22:13:41)
PostgreSQL7.0手冊-用戶手冊-19. SQL命令-REVOKE
(2001-04-21 22:13:18)
===
更多相關
===
★ 樊強制作 歡迎分享 ★