UNLISTEN
UNLISTEN — прекратить ожидание уведомления
Синтаксис
UNLISTEN { канал | * }Описание
UNLISTEN применяется для отмены существующей подписки на получение событий NOTIFY. UNLISTEN отменяет существующую подписку в текущем сеансе Postgres Pro на канал уведомлений с именем канал. Специальный знак * отменяет все подписки в текущем сеансе.
В описании NOTIFY использование LISTEN и NOTIFY рассматривается более подробно.
Параметры
каналИмя канала уведомлений (любой идентификатор).
*Отменяются все текущие подписки на уведомления для активного сеанса.
Примечания
Вы можете также попытаться отменить подписку на канал, на который не подписаны; предупреждений или ошибки при этом не будет.
UNLISTEN * автоматически выполняется в конце каждого сеанса.
Транзакция, выполнившая UNLISTEN, не может быть подготовлена для двухфазной фиксации.
Примеры
Подписка на получение события:
LISTEN virtual; NOTIFY virtual; Asynchronous notification "virtual" received from server process with PID 8448.
Сразу после выполнения UNLISTEN последующие сообщения NOTIFY игнорируются:
UNLISTEN virtual; NOTIFY virtual; -- событие NOTIFY не поступает
Совместимость
Команда UNLISTEN отсутствует в стандарте SQL.
UNLISTEN
UNLISTEN — stop listening for a notification
Synopsis
UNLISTEN { channel | * }
Description
UNLISTEN is used to remove an existing registration for NOTIFY events. UNLISTEN cancels any existing registration of the current Postgres Pro session as a listener on the notification channel named channel. The special wildcard * cancels all listener registrations for the current session.
NOTIFY contains a more extensive discussion of the use of LISTEN and NOTIFY.
Parameters
channelName of a notification channel (any identifier).
*All current listen registrations for this session are cleared.
Notes
You can unlisten something you were not listening for; no warning or error will appear.
At the end of each session, UNLISTEN * is automatically executed.
A transaction that has executed UNLISTEN cannot be prepared for two-phase commit.
Examples
To make a registration:
LISTEN virtual; NOTIFY virtual; Asynchronous notification "virtual" received from server process with PID 8448.
Once UNLISTEN has been executed, further NOTIFY messages will be ignored:
UNLISTEN virtual; NOTIFY virtual; -- no NOTIFY event is received
Compatibility
There is no UNLISTEN command in the SQL standard.