pg_listen

Nombre

pg_listen -- fija o cambia una rellamada para los mensajes NOTIFY as�ncronos

Synopsis

pg_listen dbHandle notifyName comandoRellamada

Inputs

dbHandle

Especifica un handle de base de datos v�lido.

notifyName

Especifica el nombre de la notificaci�n para empezar o parar de escuchar.

comandoRellamada

Si este par�metro se pasa con un valor no vac�o, proporciona el comando a ejecutar cuando una notificaci�n v�lida llegue.

Outputs

Ninguno

Description

pg_listen pg_listen crea, cambia o cancela una petici�n para escuchar mensajes NOTIFY as�ncronos desde el backend de Postgres. Con un par�metro comandoRellamada, la petici�n se establecer� o el string de comando de una petici�n existente ser� reemplazada . Sin ning�n par�metro comandoRellamada, se cancelar� una petici�n anterior.

Despu�s de que se establezca una petici�n pg_listen, el string de comando especificado se ejecutar� cuando un mensaje NOTIFY que lleve el nombre dado llegue desde el backend. Esto ocurre cuando cualquier aplicaci�n cliente de Postgres muestra un comando NOTIFY haciendo referencia a ese nombre. (N�tese que puede ser, aunque no obligatoriamente, el de una relaci�n existente en la base de datos). El string de comando se ejecuta desde el loop de espera de Tcl. Este es el estado de espera normal de una aplicaci�n escrita con Tk. En shells que no son Tk Tcl, puede ejecutar update o vwait para provocar que se introduzca el loop de espera.

No deber�a invocar las declaraciones SQL LISTEN o UNLISTEN directamente cuando est� usando pg_listen. Pgtcl se encarga de poner en marcha esas declaraciones por usted. Pero si usted quiere enviar un mensaje NOTIFY, invoque la declaraci�n SQL NOTIFY usando pg_exec.