Sophie

Sophie

distrib > Mandriva > 10.0 > i586 > by-pkgid > db7d48fed1469a51f3fb965d5b5b2ac1 > files > 283

postgresql-docs-7.4.1-2.5.100mdk.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML
><HEAD
><TITLE
>pg_listen</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REV="MADE"
HREF="mailto:pgsql-docs@postgresql.org"><LINK
REL="HOME"
TITLE="PostgreSQL 7.4.1 Documentation"
HREF="index.html"><LINK
REL="UP"
TITLE="pgtcl Command Reference"
HREF="libpgtcl-ref.html"><LINK
REL="PREVIOUS"
TITLE="pg_execute"
HREF="pgtcl-pgexecute.html"><LINK
REL="NEXT"
TITLE="pg_on_connection_loss"
HREF="pgtcl-pgon-connection-loss.html"><LINK
REL="STYLESHEET"
TYPE="text/css"
HREF="stylesheet.css"><META
NAME="creation"
CONTENT="2003-12-22T03:48:47"></HEAD
><BODY
CLASS="REFENTRY"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="5"
ALIGN="center"
VALIGN="bottom"
>PostgreSQL 7.4.1 Documentation</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
HREF="pgtcl-pgexecute.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
HREF="pgtcl-pgexecute.html"
>Fast Backward</A
></TD
><TD
WIDTH="60%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="top"
><A
HREF="pgtcl-pgon-connection-loss.html"
>Fast Forward</A
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="top"
><A
HREF="pgtcl-pgon-connection-loss.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="PGTCL-PGLISTEN"
></A
>pg_listen</H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN22794"
></A
><H2
>Name</H2
>pg_listen&nbsp;--&nbsp;set or change a callback for asynchronous notification messages<A
NAME="IX-PGTCL-PGLISTEN-2"
></A
></DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN22799"
></A
><H2
>Synopsis</H2
><PRE
CLASS="SYNOPSIS"
>pg_listen <VAR
CLASS="PARAMETER"
>conn</VAR
> <VAR
CLASS="PARAMETER"
>notifyName</VAR
> ?<SPAN
CLASS="OPTIONAL"
><VAR
CLASS="PARAMETER"
>callbackCommand</VAR
></SPAN
>?</PRE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN22805"
></A
><H2
>Description</H2
><P
>   <CODE
CLASS="FUNCTION"
>pg_listen</CODE
> creates, changes, or cancels a
   request to listen for asynchronous notification messages from the
   <SPAN
CLASS="PRODUCTNAME"
>PostgreSQL</SPAN
> server.  With a
   <VAR
CLASS="PARAMETER"
>callbackCommand</VAR
> parameter, the request is
   established, or the command string of an already existing request
   is replaced.  With no <VAR
CLASS="PARAMETER"
>callbackCommand</VAR
> parameter, a
   prior request is canceled.
  </P
><P
>   After a <CODE
CLASS="FUNCTION"
>pg_listen</CODE
> request is established, the
   specified command string is executed whenever a notification
   message bearing the given name arrives from the server.  This
   occurs when any <SPAN
CLASS="PRODUCTNAME"
>PostgreSQL</SPAN
> client
   application issues a
   <TT
CLASS="COMMAND"
>NOTIFY</TT
><A
NAME="AEN22816"
></A
> command referencing that name.  The
   command string is executed from the Tcl idle loop.  That is the
   normal idle state of an application written with Tk.  In non-Tk Tcl
   shells, you can execute <CODE
CLASS="FUNCTION"
>update</CODE
> or
   <CODE
CLASS="FUNCTION"
>vwait</CODE
> to cause the idle loop to be entered.
  </P
><P
>   You should not invoke the SQL statements <TT
CLASS="COMMAND"
>LISTEN</TT
>
   or <TT
CLASS="COMMAND"
>UNLISTEN</TT
> directly when using
   <CODE
CLASS="FUNCTION"
>pg_listen</CODE
>.  <SPAN
CLASS="APPLICATION"
>pgtcl</SPAN
>
   takes care of issuing those statements for you.  But if you want to
   send a notification message yourself, invoke the SQL
   <TT
CLASS="COMMAND"
>NOTIFY</TT
> statement using
   <CODE
CLASS="FUNCTION"
>pg_exec</CODE
>.
  </P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN22828"
></A
><H2
>Arguments</H2
><P
></P
><DIV
CLASS="VARIABLELIST"
><DL
><DT
><VAR
CLASS="PARAMETER"
>conn</VAR
></DT
><DD
><P
>      The handle of the connection on which to listen for notifications.
     </P
></DD
><DT
><VAR
CLASS="PARAMETER"
>notifyName</VAR
></DT
><DD
><P
>      The name of the notification condition to start or stop
      listening to.
     </P
></DD
><DT
><VAR
CLASS="PARAMETER"
>callbackCommand</VAR
></DT
><DD
><P
>      If present, provides the command string to execute when a
      matching notification arrives.
     </P
></DD
></DL
></DIV
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN22846"
></A
><H2
>Return Value</H2
><P
>   None
  </P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="pgtcl-pgexecute.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="pgtcl-pgon-connection-loss.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>pg_execute</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="libpgtcl-ref.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>pg_on_connection_loss</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>