UNLISTEN

Nombre

UNLISTEN  --  Deja de prestar atención a las notificaciones

Synopsis

UNLISTEN { nombre_notif | * }
  

Entradas

nombre_notif

Nombre de la notificación previamente registrada.

*

Se limpiarán todos los registros en escucha para este backend.

Salidas

UNLISTEN

Acuse de recibo de que la declaración se ha ejecutado.

Descripción

UNLISTEN se usa para borrar un registro NOTIFY existente. UNLISTEN cancela cualquier registro existente de la sesión actual de Postgres en la condición de notificación nombre_notif. La condición asterisco "*" cancela todos los registros "listener" de la sesión actual.

NOTIFY contiene una discusión más extensa del uso de LISTEN y NOTIFY.

Notas

nombre_clase no necesariamente ha de ser un nombre de clase válido, pero puede ser cualquier cadena (string) válida de hasta 32 caracteres de largo.

El backend no muestra errores si usted hace un UNLISTEN sobre algo al que no estuviera atendiendo (escuchando). Cada backend ejecutará automáticamente UNLISTEN * cuando termine.

Una restricción que se daba en versiones anteriores de Postgres, que hacía que un nombre_clase que no se correspondiera con la tabla en curso debía ser entrecomillada, ya no se da actualmente.

Usage

Para suscribirse a un registro existente:

postgres=> LISTEN virtual;
LISTEN
postgres=> NOTIFY virtual;
NOTIFY
ASYNC NOTIFY of 'virtual' from backend pid '12317' received
   

Una vez que UNLISTEN se ha ejecutado, posteriores comandos NOTIFY serán ignorados:

postgres=> UNLISTEN virtual;
UNLISTEN
postgres=> NOTIFY virtual;
NOTIFY
-- notice no NOTIFY event is received
   

Compatibilidad

SQL92

No existe UNLISTEN en SQL92.