Add reference pages on user interface applications.
authorThomas G. Lockhart <[email protected]>
Thu, 20 May 1999 05:40:27 +0000 (05:40 +0000)
committerThomas G. Lockhart <[email protected]>
Thu, 20 May 1999 05:40:27 +0000 (05:40 +0000)
doc/src/sgml/ref/allfiles.sgml
doc/src/sgml/ref/commands.sgml
doc/src/sgml/ref/lock.sgml
doc/src/sgml/ref/pgaccess-ref.sgml [new file with mode: 0644]
doc/src/sgml/ref/pgadmin-ref.sgml [new file with mode: 0644]
doc/src/sgml/ref/psql-ref.sgml
doc/src/sgml/ref/set.sgml

index dabbedf5fc56d3ee78e047dae296d4f3bf1e8ae9..385224a934fce897db41246bdab7f4f7746a87f6 100644 (file)
@@ -62,7 +62,7 @@
 <!entity close              system "close.sgml">
 <!entity cluster            system "cluster.sgml">
 <!entity commit             system "commit.sgml">
-<!entity copy               system "copy.sgml">
+<!entity copyTable          system "copy.sgml">
 <!entity createAggregate    system "create_aggregate.sgml">
 <!entity createDatabase     system "create_database.sgml">
 <!entity createFunction     system "create_function.sgml">
 <!entity destroyuser        system "destroyuser.sgml">
 <!entity initdb             system "initdb.sgml">
 <!entity initlocation       system "initlocation.sgml">
-<!entity pgDump            system "pg_dump.sgml">
-<!entity pgDumpall         system "pg_dumpall.sgml">
+<!entity pgAccess           system "pgaccess-ref.sgml">
+<!entity pgAdmin            system "pgadmin-ref.sgml">
+<!entity pgDump             system "pg_dump.sgml">
+<!entity pgDumpall          system "pg_dumpall.sgml">
 <!entity pgUpgrade          system "pg_upgrade.sgml">
 <!entity psqlRef            system "psql-ref.sgml">
 <!entity vacuumdb           system "vacuumdb.sgml">
index 005dbb4d6a9e709bd236467f608c75a9bf662b34..770c3a20543323c60e9b8f7682c7386d50ed4ab0 100644 (file)
@@ -1,67 +1,69 @@
-<chapter id="sql-commands">
-<Title>SQL Commands</Title>
+ <chapter id="sql-commands">
+  <Title>SQL Commands</Title>
 
-<Para>
-This is reference information for the <acronym>SQL</acronym>
-commands supported by <productname>Postgres</productname>.
-</Para>
+  <abstract>
+   <Para>
+    This is reference information for the <acronym>SQL</acronym>
+    commands supported by <productname>Postgres</productname>.
+   </Para>
+  </abstract>
 
-&abort;
-&alterTable;
-&alterUser;
-&begin;
-&close;
-&cluster;
-&commit;
-&copy;
-&createAggregate;
-&createDatabase;
-&createFunction;
-&createIndex;
-&createLanguage;
-&createOperator;
-&createRule;
-&createSequence;
-&createTable;
-&createTrigger;
-&createType;
-&createUser;
-&createView;
-&declare;
-&delete;
-&dropAggregate;
-&dropDatabase;
-&dropFunction;
-&dropIndex;
-&dropLanguage;
-&dropOperator;
-&dropRule;
-&dropSequence;
-&dropTable;
-&dropTrigger;
-&dropType
-&dropUser;
-&dropView;
-&explain;
-&fetch;
-&grant;
-&insert;
-&listen;
-&load;
-&lock;
-&move;
-&notify;
-&reset;
-&revoke;
-&rollback;
-&select;
-&set;
-&show;
-&unlisten;
-&update;
-&vacuum;
-
-</Chapter>
+   &abort;
+   &alterTable;
+   &alterUser;
+   &begin;
+   &close;
+   &cluster;
+   &commit;
+   &copyTable;
+   &createAggregate;
+   &createDatabase;
+   &createFunction;
+   &createIndex;
+   &createLanguage;
+   &createOperator;
+   &createRule;
+   &createSequence;
+   &createTable;
+   &createTrigger;
+   &createType;
+   &createUser;
+   &createView;
+   &declare;
+   &delete;
+   &dropAggregate;
+   &dropDatabase;
+   &dropFunction;
+   &dropIndex;
+   &dropLanguage;
+   &dropOperator;
+   &dropRule;
+   &dropSequence;
+   &dropTable;
+   &dropTrigger;
+   &dropType
+   &dropUser;
+   &dropView;
+   &explain;
+   &fetch;
+   &grant;
+   &insert;
+   &listen;
+   &load;
+   &lock;
+   &move;
+   &notify;
+   &reset;
+   &revoke;
+   &rollback;
+   &select;
+   &set;
+   &show;
+   &unlisten;
+   &update;
+   &vacuum;
+  
+ </Chapter>
 
 <!--
 Disable this chapter until we have more functions documented.
@@ -84,31 +86,35 @@ functions supported by <productname>Postgres</productname>.
 
 -->
 
-<chapter Id="utilities">
-<title>Utility Applications</title>
+ <chapter Id="utilities">
+  <title>Utility Applications</title>
 
-<para>
-This is reference information for the 
-<productname>Postgres</productname> support utilities.
-</para>
+  <abstract>
+   <para>
+    This is reference information for the 
+    <productname>Postgres</productname> support utilities.
+   </para>
+  </abstract>
 
-&createdb;
-&createuser;
-&destroydb;
-&destroyuser;
-&initdb;
-&initlocation;
-&pgDump;
-&pgDumpall;
-&psqlRef;
-&vacuumdb;
+   &createdb;
+   &createuser;
+   &destroydb;
+   &destroyuser;
+   &initdb;
+   &initlocation;
+   &pgAccess;
+   &pgAdmin;
+   &pgDump;
+   &pgDumpall;
+   &psqlRef;
+   &vacuumdb;
 
-</chapter>
+ </chapter>
 
 <!-- Keep this comment at the end of the file
 Local variables:
 mode: sgml
-sgml-omittag:t
+sgml-omittag:nil
 sgml-shorttag:t
 sgml-minimize-attributes:nil
 sgml-always-quote-attributes:t
index 0d2c504752383db50c922bfa4b44fe6191fcef46..dc702b0cdb8550c21ebdcd87bf043248ee2f1551 100644 (file)
 <REFENTRY ID="SQL-LOCK">
-<REFMETA>
-<REFENTRYTITLE>
-LOCK
-</REFENTRYTITLE>
-<REFMISCINFO>SQL - Language Statements</REFMISCINFO>
-</REFMETA>
-<REFNAMEDIV>
-<REFNAME>
-LOCK
-</REFNAME>
-<REFPURPOSE>
-Explicit lock of a table inside a transaction
-</REFPURPOSE>
 </refnamediv>
-<REFSYNOPSISDIV>
-<REFSYNOPSISDIVINFO>
-<DATE>1998-09-24</DATE>
-</REFSYNOPSISDIVINFO>
-<SYNOPSIS>
-LOCK [ TABLE ] <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>
-</SYNOPSIS>
+ <REFMETA>
+  <REFENTRYTITLE>
+   LOCK
+  </REFENTRYTITLE>
+  <REFMISCINFO>SQL - Language Statements</REFMISCINFO>
+ </REFMETA>
+ <REFNAMEDIV>
+  <REFNAME>
+   LOCK
+  </REFNAME>
+  <REFPURPOSE>
+   Explicit lock of a table inside a transaction
+  </REFPURPOSE>
+ </refnamediv>
+ <REFSYNOPSISDIV>
+  <REFSYNOPSISDIVINFO>
+   <DATE>1998-09-24</DATE>
+  </REFSYNOPSISDIVINFO>
+  <SYNOPSIS>
+   LOCK [ TABLE ] <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>
+  </SYNOPSIS>
 
-   <REFSECT2 ID="R2-SQL-LOCK-1">
-     <REFSECT2INFO>
-       <DATE>1998-09-01</DATE>
-     </REFSECT2INFO>
-     <TITLE>
-       Inputs
-     </TITLE>
-     <PARA>
-     </PARA>
-     <VARIABLELIST>
-       <VARLISTENTRY>
-         <TERM>
-           <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>
-         </TERM>
-         <LISTITEM>
-           <PARA>
-             The name of an existing table to lock.
-           </para>
-         </listitem>
-       </varlistentry>
-     </VARIABLELIST>
+  <REFSECT2 ID="R2-SQL-LOCK-1">
+   <REFSECT2INFO>
+    <DATE>1998-09-01</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Inputs
+   </TITLE>
+   <PARA>
+   </PARA>
+   <VARIABLELIST>
+    <VARLISTENTRY>
+     <TERM>
+      <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       The name of an existing table to lock.
+      </para>
+     </listitem>
+    </varlistentry>
+   </VARIABLELIST>
      
-   </REFSECT2>
+  </REFSECT2>
 
-   <REFSECT2 ID="R2-SQL-LOCK-2">
-     <REFSECT2INFO>
-       <DATE>1998-09-24</DATE>
-     </REFSECT2INFO>
-     <TITLE>
-       Outputs
-     </TITLE>
-     <PARA>
-       
-       <VARIABLELIST>
-         <VARLISTENTRY>
-           <TERM>
-             DELETE 0
-           </TERM>
-           <LISTITEM>
-             <PARA>
-               Message returned on a successful lock.
-               <command>LOCK</command> is implemented as a 
-               <command>DELETE FROM <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE></command>
-               which is guaranteed to not delete any rows.
-             </para>
-           </listitem>
-         </varlistentry>
-         <VARLISTENTRY>
-           <TERM>
-             ERROR <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>: Table does not exist.
-           </TERM>
-           <LISTITEM>
-             <PARA>
-               Message returned if <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>
-               does not exist.
-               </para>
-           </listitem>
-         </varlistentry>
-       </VARIABLELIST>
-     </para>
-   </REFSECT2>
 </REFSYNOPSISDIV>
+  <REFSECT2 ID="R2-SQL-LOCK-2">
+   <REFSECT2INFO>
+    <DATE>1998-09-24</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Outputs
+   </TITLE>
+   <PARA>
+    
+    <VARIABLELIST>
+     <VARLISTENTRY>
+      <TERM>
+       DELETE 0
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   Message returned on a successful lock.
+   <command>LOCK</command> is implemented as a 
+   <command>DELETE FROM <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE></command>
+   which is guaranteed to not delete any rows.
+       </para>
+      </listitem>
+     </varlistentry>
+     <VARLISTENTRY>
+      <TERM>
+       ERROR <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>: Table does not exist.
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   Message returned if <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>
+   does not exist.
+       </para>
+      </listitem>
+     </varlistentry>
+    </VARIABLELIST>
+   </para>
+  </REFSECT2>
+ </REFSYNOPSISDIV>
 
 <REFSECT1 ID="R1-SQL-LOCK-1">
-   <REFSECT1INFO>
-     <DATE>1998-09-24</DATE>
-   </REFSECT1INFO>
-   <TITLE>
-     Description
-   </TITLE>
-   <PARA>
-     <command>LOCK</command> locks in exclusive mode a table inside
-     a transaction. The classic use for this is
-     the case where you want to select some data, then
-     update it inside a transaction.
-     If you don't explicit lock a table using LOCK statement, it will be
-     implicit locked only at the first
-     <command>UPDATE</command>, <command>INSERT</command>,
-     or <command>DELETE</command> operation.
-     If you don't exclusive lock the table before the select, some
-     other user may also read the selected data, and try and do
-     their own update, causing a deadlock while you both wait
-     for the other to release the select-induced shared lock so
-     you can get an exclusive lock to do the update.
-   </para>
-   <para>
-     Another example of deadlock is where one user locks one
-     table, and another user locks a second table. While both
-     keep their existing locks, the first user tries to lock
-     the second user's table, and the second user tries to lock
-     the first user's table. Both users deadlock waiting for
-     the tables to become available. The only solution to this
-     is for both users to lock tables in the same order, so
-     user's lock acquisitions and requests to not form a deadlock.
-   </para>
-   <note>
-     <para>
-       <productname>Postgres</productname> does detect deadlocks and will
-       rollback transactions to resolve the deadlock. Usually, at least one
-       of the deadlocked transactions will complete successfully.
-     </para>
-   </note>
+ <REFSECT1 ID="R1-SQL-LOCK-1">
+  <REFSECT1INFO>
+   <DATE>1998-09-24</DATE>
+  </REFSECT1INFO>
+  <TITLE>
+   Description
+  </TITLE>
+  <PARA>
+   <command>LOCK</command> locks in exclusive mode a table inside
+   a transaction. The classic use for this is
+   the case where you want to select some data, then
+   update it inside a transaction.
+   If you don't explicit lock a table using LOCK statement, it will be
+   implicit locked only at the first
+   <command>UPDATE</command>, <command>INSERT</command>,
+   or <command>DELETE</command> operation.
+   If you don't exclusive lock the table before the select, some
+   other user may also read the selected data, and try and do
+   their own update, causing a deadlock while you both wait
+   for the other to release the select-induced shared lock so
+   you can get an exclusive lock to do the update.
+  </para>
+  <para>
+   Another example of deadlock is where one user locks one
+   table, and another user locks a second table. While both
+   keep their existing locks, the first user tries to lock
+   the second user's table, and the second user tries to lock
+   the first user's table. Both users deadlock waiting for
+   the tables to become available. The only solution to this
+   is for both users to lock tables in the same order, so
+   user's lock acquisitions and requests to not form a deadlock.
+  </para>
+  <note>
+   <para>
+    <productname>Postgres</productname> does detect deadlocks and will
+    rollback transactions to resolve the deadlock. Usually, at least one
+    of the deadlocked transactions will complete successfully.
+   </para>
+  </note>
 
-   <REFSECT2 ID="R2-SQL-LOCK-3">
-     <REFSECT2INFO>
-       <DATE>1998-09-24</DATE>
-     </REFSECT2INFO>
-     <TITLE>
-       Notes
-     </TITLE>
-     <para>
-       <command>LOCK</command> is a <productname>Postgres</productname>
-       language extension.
-     </para>
-     <para>
-       <command>LOCK</command> works only inside transactions.
-       
-       <note>
-         <title>Bug</title>
-         <para>
-           If the locked table is dropped then it will be automatically
-           unlocked even if a transaction is still in progress.
-         </para>
-       </note>
-     </para>
-   </REFSECT2>
 </refsect1>
+  <REFSECT2 ID="R2-SQL-LOCK-3">
+   <REFSECT2INFO>
+    <DATE>1998-09-24</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Notes
+   </TITLE>
+   <para>
+    <command>LOCK</command> is a <productname>Postgres</productname>
+    language extension.
+   </para>
+   <para>
+    <command>LOCK</command> works only inside transactions.
+    
+    <note>
+     <title>Bug</title>
+     <para>
+      If the locked table is dropped then it will be automatically
+      unlocked even if a transaction is still in progress.
+     </para>
+    </note>
+   </para>
+  </REFSECT2>
+ </refsect1>
   
 <REFSECT1 ID="R1-SQL-LOCK-2">
-   <TITLE>
-     Usage
-   </TITLE>
-   <PARA>
-   </PARA>
-   <ProgramListing>
-     --Explicit locking to prevent deadlock:
-     --
-     BEGIN WORK;
-     LOCK films;
-     SELECT * FROM films;
-     UPDATE films SET len = INTERVAL '100 minute'
-     WHERE len = INTERVAL '117 minute';
-     COMMIT WORK;
-   </ProgramListing>
+ <REFSECT1 ID="R1-SQL-LOCK-2">
+  <TITLE>
+   Usage
+  </TITLE>
+  <PARA>
+  </PARA>
+  <ProgramListing>
+    --Explicit locking to prevent deadlock:
+    --
+    BEGIN WORK;
+    LOCK films;
+    SELECT * FROM films;
+    UPDATE films SET len = INTERVAL '100 minute'
+      WHERE len = INTERVAL '117 minute';
+    COMMIT WORK;
+  </ProgramListing>
    
 </REFSECT1>
+ </REFSECT1>
 
 <REFSECT1 ID="R1-SQL-LOCK-3">
-   <TITLE>
-     Compatibility
-   </TITLE>
+ <REFSECT1 ID="R1-SQL-LOCK-3">
+  <TITLE>
+   Compatibility
+  </TITLE>
      
-   <REFSECT2 ID="R2-SQL-LOCK-4">
-     <REFSECT2INFO>
-       <DATE>1998-09-24</DATE>
-     </REFSECT2INFO>
-     <TITLE>
-       SQL92
-     </TITLE>
-     <PARA>
-       There is no <command>LOCK TABLE</command> in <acronym>SQL92</acronym>,
-       which instead uses <command>SET TRANSACTION</command> to specify
-       concurrency level on transactions.
-     </para>
-   </refsect2>
 </refsect1>
+  <REFSECT2 ID="R2-SQL-LOCK-4">
+   <REFSECT2INFO>
+    <DATE>1998-09-24</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    SQL92
+   </TITLE>
+   <PARA>
+    There is no <command>LOCK TABLE</command> in <acronym>SQL92</acronym>,
+    which instead uses <command>SET TRANSACTION</command> to specify
+    concurrency level on transactions.
+   </para>
+  </refsect2>
+ </refsect1>
 </REFENTRY>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:nil
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../reference.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:"/usr/lib/sgml/CATALOG"
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/src/sgml/ref/pgaccess-ref.sgml b/doc/src/sgml/ref/pgaccess-ref.sgml
new file mode 100644 (file)
index 0000000..ec9b9a1
--- /dev/null
@@ -0,0 +1,74 @@
+<REFENTRY ID="APP-PGACCESS">
+ <REFMETA>
+  <REFENTRYTITLE id="pgaccess-ref">
+   <application>pgaccess</application>
+  </REFENTRYTITLE>
+  <REFMISCINFO>Application</REFMISCINFO>
+ </REFMETA>
+ <REFNAMEDIV>
+  <REFNAME>
+   <application>pgaccess</application>
+  </REFNAME>
+  <REFPURPOSE>
+   <productname>Postgres</productname> graphical interactive client
+  </REFPURPOSE>
+ </refnamediv>
+ <REFSYNOPSISDIV>
+  <REFSYNOPSISDIVINFO>
+   <DATE>1999-05-19</DATE>
+  </REFSYNOPSISDIVINFO>
+  <SYNOPSIS>
+pgaccess [ <replaceable class="parameter">dbname</replaceable> ]
+  </SYNOPSIS>
+
+  <REFSECT2 ID="R2-APP-PGACCESS-1">
+   <REFSECT2INFO>
+    <DATE>1999-05-19</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Inputs
+   </TITLE>
+   <PARA>
+   </para>
+  </refsect2>
+
+  <REFSECT2 ID="R2-APP-PGACCESS-2">
+   <REFSECT2INFO>
+    <DATE>1999-05-19</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Outputs
+   </TITLE>
+   <PARA>
+   </para>
+  </refsect2>
+ </refsynopsisdiv>
+
+ <REFSECT1 ID="R1-APP-PGACCESS-1">
+  <REFSECT1INFO>
+   <DATE>1999-05-19</DATE>
+  </REFSECT1INFO>
+  <TITLE>
+   Description
+  </TITLE>
+  <PARA>
+  </para>
+ </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:nil
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../reference.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:"/usr/lib/sgml/CATALOG"
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/src/sgml/ref/pgadmin-ref.sgml b/doc/src/sgml/ref/pgadmin-ref.sgml
new file mode 100644 (file)
index 0000000..476923a
--- /dev/null
@@ -0,0 +1,74 @@
+<REFENTRY ID="APP-PGADMIN">
+ <REFMETA>
+  <REFENTRYTITLE id="pgadmin-ref">
+   <application>pgadmin</application>
+  </REFENTRYTITLE>
+  <REFMISCINFO>Application</REFMISCINFO>
+ </REFMETA>
+ <REFNAMEDIV>
+  <REFNAME>
+   <application>pgadmin</application>
+  </REFNAME>
+  <REFPURPOSE>
+   <productname>Postgres</productname> graphical interactive client
+  </REFPURPOSE>
+ </refnamediv>
+ <REFSYNOPSISDIV>
+  <REFSYNOPSISDIVINFO>
+   <DATE>1999-05-19</DATE>
+  </REFSYNOPSISDIVINFO>
+  <SYNOPSIS>
+pgadmin [ <replaceable class="parameter">dbname</replaceable> ]
+  </SYNOPSIS>
+
+  <REFSECT2 ID="R2-APP-PGADMIN-1">
+   <REFSECT2INFO>
+    <DATE>1999-05-19</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Inputs
+   </TITLE>
+   <PARA>
+   </para>
+  </refsect2>
+
+  <REFSECT2 ID="R2-APP-PGADMIN-2">
+   <REFSECT2INFO>
+    <DATE>1999-05-19</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Outputs
+   </TITLE>
+   <PARA>
+   </para>
+  </refsect2>
+ </refsynopsisdiv>
+
+ <REFSECT1 ID="R1-APP-PGADMIN-1">
+  <REFSECT1INFO>
+   <DATE>1999-05-19</DATE>
+  </REFSECT1INFO>
+  <TITLE>
+   Description
+  </TITLE>
+  <PARA>
+  </para>
+ </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:nil
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../reference.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:"/usr/lib/sgml/CATALOG"
+sgml-local-ecat-files:nil
+End:
+-->
index 96860281f9468ce76b668f2b55bc9e2d1a9a53f6..454e4c0ec4fac7de90e6129c20eb9f3cf2c1c116 100644 (file)
 <REFENTRY ID="APP-PSQL">
-<REFMETA>
-<REFENTRYTITLE id="psql-ref">
-<application>psql</application>
-</REFENTRYTITLE>
-<REFMISCINFO>Application</REFMISCINFO>
-</REFMETA>
-<REFNAMEDIV>
-<REFNAME>
-<application>psql</application>
-</REFNAME>
-<REFPURPOSE>
-<productname>Postgres</productname> interactive client
-</REFPURPOSE>
 </refnamediv>
-<REFSYNOPSISDIV>
-<REFSYNOPSISDIVINFO>
-<DATE>1998-09-26</DATE>
-</REFSYNOPSISDIVINFO>
-<SYNOPSIS>
+ <REFMETA>
+  <REFENTRYTITLE id="psql-ref">
+   <application>psql</application>
+  </REFENTRYTITLE>
+  <REFMISCINFO>Application</REFMISCINFO>
+ </REFMETA>
+ <REFNAMEDIV>
+  <REFNAME>
+   <application>psql</application>
+  </REFNAME>
+  <REFPURPOSE>
+   <productname>Postgres</productname> interactive client
+  </REFPURPOSE>
+ </refnamediv>
+ <REFSYNOPSISDIV>
+  <REFSYNOPSISDIVINFO>
+   <DATE>1998-09-26</DATE>
+  </REFSYNOPSISDIVINFO>
+  <SYNOPSIS>
 psql [ <replaceable class="parameter">dbname</replaceable> ]
 psql -A [ -c <replaceable class="parameter">query</replaceable> ] [ -d <replaceable class="parameter">dbname</replaceable> ]
     -e -E [ -f <replaceable class="parameter">filename</replaceable> ] [ -F <replaceable class="parameter">separator</replaceable> ] [ -h <replaceable class="parameter">hostname</replaceable> ] -Hln
     [ -o <replaceable class="parameter">filename</replaceable> ] [ -p <replaceable class="parameter">port</replaceable> ] -qsSt ] [ -T <replaceable class="parameter">table_options</replaceable> ] -ux [ <replaceable class="parameter">dbname</replaceable> ]
-</SYNOPSIS>
-
-    <REFSECT2 ID="R2-APP-PSQL-1">
-      <REFSECT2INFO>
-   <DATE>1998-09-26</DATE>
-      </REFSECT2INFO>
-      <TITLE>
-   Inputs
-      </TITLE>
-      <PARA>
-   <application>psql</application> accepts many command-line arguments,
-   a rich set of meta-commands, and the full <acronym>SQL</acronym> language
-   supported by <productname>Postgres</productname>. The most common
-   command-line arguments are:
-   
-   <VARIABLELIST>
-     <VARLISTENTRY>
-       <TERM>
-         <REPLACEABLE CLASS="PARAMETER">dbname</REPLACEABLE>
-       </TERM>
-       <LISTITEM>
-         <PARA>
-       The name of an existing database to access.
-       <replaceable class="parameter">dbname</replaceable>
-       defaults to the value of the
-       <envar>USER</envar>
-       environment variable or, if that's not set, to the Unix account name of the
-       current user.
-       
-         </PARA>
-       </LISTITEM>
-     </VARLISTENTRY>
+  </SYNOPSIS>
+
+  <REFSECT2 ID="R2-APP-PSQL-1">
+   <REFSECT2INFO>
+    <DATE>1998-09-26</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Inputs
+   </TITLE>
+   <PARA>
+    <application>psql</application> accepts many command-line arguments,
+    a rich set of meta-commands, and the full <acronym>SQL</acronym> language
+    supported by <productname>Postgres</productname>. The most common
+    command-line arguments are:
+
+    <VARIABLELIST>
+     <VARLISTENTRY>
+      <TERM>
+       <REPLACEABLE CLASS="PARAMETER">dbname</REPLACEABLE>
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   The name of an existing database to access.
+   <replaceable class="parameter">dbname</replaceable>
+   defaults to the value of the
+   <envar>USER</envar>
+   environment variable or, if that's not set, to the Unix account name of the
+   current user.
+       </PARA>
+      </LISTITEM>
+     </VARLISTENTRY>
+
+     <VARLISTENTRY>
+      <TERM>
+       -c <replaceable class="parameter">query</replaceable>
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   A single query to run. <application>psql</application> will exit on completion.
+       </PARA>
+      </LISTITEM>
+     </VARLISTENTRY>
      
-     <VARLISTENTRY>
-       <TERM>
-         -c <replaceable class="parameter">query</replaceable>
-       </TERM>
-       <LISTITEM>
-         <PARA>
-       A single query to run. <application>psql</application> will exit on completion.
-         </PARA>
-       </LISTITEM>
-     </VARLISTENTRY>
+    </variablelist>
+   </para>
+   <para>
+    The full set of command-line arguments and meta-commands are described in a subsequent
+    section.
+   </para>
+   <para>
+    There are some environment variables which can be used in liu of
+    command line arguments. 
+    Additionally, the <productname>Postgres</productname> frontend library used by 
+    the <application>psql</application> application
+    looks for other optional environment variables to configure, for example,
+    the style of date/time representation and the local time zone. Refer
+    to the chapter on <filename>libpq</filename> in the
+    <citetitle>Programmer's Guide</citetitle> for more details.
+   </para>
+   <para>
+    You may set any of the following environment variables to avoid
+    specifying command-line options:
+   
+    <VARIABLELIST>
+     <VARLISTENTRY>
+      <TERM>
+       <envar>PGHOST</envar>
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   The <acronym>DNS</acronym> host name of the database server.
+   Setting <envar>PGHOST</envar> to a non-zero-length string causes
+   <acronym>TCP/IP</acronym> communication
+   to be used, rather than the default local Unix domain sockets.
+       </PARA>
+      </LISTITEM>
+     </VARLISTENTRY>
+
+     <VARLISTENTRY>
+      <TERM>
+       <envar>PGPORT</envar>
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   The port number on which a <productname>Postgres</productname> server is listening.
+   Defaults to <literal>5432</literal>.
+       </PARA>
+      </LISTITEM>
+     </VARLISTENTRY>
+
+     <VARLISTENTRY>
+      <TERM>
+       <envar>PGTTY</envar>
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   The target for display of messages from the client support library.
+   Not required.
+       </PARA>
+      </LISTITEM>
+     </VARLISTENTRY>
+
+     <VARLISTENTRY>
+      <TERM>
+       <envar>PGOPTION</envar>
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   If <envar>PGOPTION</envar>
+   is specified, then the options it contains are parsed
+   <emphasis>before</emphasis>
+   any command-line options.
+       </PARA>
+      </LISTITEM>
+     </VARLISTENTRY>
+
+     <VARLISTENTRY>
+      <TERM>
+       <envar>PGREALM</envar>
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   <envar>PGREALM</envar>
+   only applies if
+   <productname>Kerberos</productname>
+   authentication is in use.  
+   If this environment variable is set, <productname>Postgres</productname>
+   will attempt authentication with servers for this realm and will use
+   separate ticket files to avoid conflicts with local ticket files.
+   See the <citetitle>PostgreSQL Administrator's Guide</citetitle>
+   for additional information on
+   <productname>Kerberos</productname>.
+       </para>
+      </listitem>
+     </varlistentry>
+    </variablelist>
+   </para>
+  </refsect2>
+
+  <REFSECT2 ID="R2-APP-PSQL-2">
+   <REFSECT2INFO>
+    <DATE>1998-09-26</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Outputs
+   </TITLE>
+   <PARA>
+    <application>psql</application>
+    returns 0 to the shell on successful completion of all queries,
+    1 for errors, 2 for abrupt disconnection from the backend.
+    The default TAB delimiter is used.
+    <application>psql</application>
+    will also return 1 if the connection to a database could not be made for
+    any reason.
+   </para>
+  </refsect2>
+ </refsynopsisdiv>
+
+ <REFSECT1 ID="R1-APP-PSQL-1">
+  <REFSECT1INFO>
+   <DATE>1998-09-26</DATE>
+  </REFSECT1INFO>
+  <TITLE>
+   Description
+  </TITLE>
+  <PARA>
+   <application>psql</application> is a character-based front-end to 
+   <productname>Postgres</productname>.
+   It enables you to
+   type in queries interactively, issue them to <productname>Postgres</productname>, 
+   and see the query
+   results.
+  </para>
+  <para>
+   <application>psql</application>
+   is a <productname>Postgres</productname> client application.  Hence, a
+   <application>postmaster</application> process
+   must be running on the database server host before
+   <application>psql</application>
+   is executed.  In addition, the correct parameters to identify
+   the database server, such as the
+   <application>postmaster</application> host name,
+   may need to be specified
+   as described below.
+  </para>
+  <para>
+   When
+   <application>psql</application>
+   starts, it reads SQL commands from
+   <filename>/etc/psqlrc</filename>
+   and then from
+   <filename>$(<envar>HOME</envar>)/.psqlrc</filename>
+   This allows SQL commands like
+   <command>SET</command>
+   which can be used to set the date style to be run at the start of
+   every session.
+  </para>
+
+  <REFSECT2 ID="R2-APP-PSQL-3">
+   <REFSECT2INFO>
+    <DATE>1998-09-26</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Connecting To A Database
+   </TITLE>
+   <para>
+    <application>psql</application>
+    attempts to make a connection to the database at the hostname and
+    port number specified on the command line.   If the connection could not
+    be made for any reason (e.g. insufficient privileges, postmaster is not
+    running on the server, etc)
+    .IR <application>psql</application>
+    will return an error that says
+    <programlisting>
+     Connection to database failed.
+    </programlisting>
+    The reason for the connection failure is not provided.
+   </para>
+  </refsect2>
+
+  <REFSECT2 ID="R2-APP-PSQL-4">
+   <REFSECT2INFO>
+    <DATE>1998-09-26</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Entering Queries
+   </TITLE>
+   <para>
+    In normal operation, 
+    <application>psql</application> provides a prompt with the name of the
+    database that <application>psql</application> is current connected to 
+    followed by the string "=>".
+    For example,
+    <programlisting>
+$ <userinput>psql testdb</userinput>
+Welcome to the POSTGRESQL interactive sql monitor:
+  Please read the file COPYRIGHT for copyright terms of POSTGRESQL
+[PostgreSQL 6.5.0 on i686-pc-linux-gnu, compiled by gcc 2.7.2.3]
+
+   type \? for help on slash commands
+   type \q to quit
+   type \g or terminate with semicolon to execute query
+ You are currently connected to the database: testdb
      
-   </variablelist>
+testdb=>
+    </programlisting>
+   </para>
+   <para>
+    At the prompt, the user may type in <acronym>SQL</acronym> queries.  
+    Unless the -S option
+    is set, input lines are sent to the backend when a query-terminating
+    semicolon is reached.
+   </para>
+   <para>
+    Whenever a query is executed, 
+    <application>psql</application> also polls for asynchronous notification
+    events generated by <command>LISTEN</command> and <command>NOTIFY</command>.
+   </para>
+   <para>
+    <application>psql</application>
+    can be used in a pipe sequence, and automatically detects when it
+    is not listening or talking to a real tty.
+   </para>
+  </refsect2>
+
+  <refsect2 id="R2-APP-PSQL-5">
+   <Title>Paging To Screen</Title>
+
+   <Note>
+    <Title>Author</Title>
+    <Para>
+     From Brett McCormick on the mailing list 1998-04-04.
+    </Para>
+   </Note>
+
+   <Para>
+    To affect the paging behavior of your <Command>psql</Command> output,
+    set or unset your PAGER environment variable.  I always have to set mine
+    before it will pause.  And of course you have to do this before
+    starting the program.
+   </para>
+
+   <Para>
+    In csh/tcsh or other C shells:
+
+    <ProgramListing>
+% unsetenv PAGER
+    </ProgramListing>
+
+    while in sh/bash or other Bourne shells:
+
+    <ProgramListing>
+% unset PAGER
+    </ProgramListing>
+   </para>
+  </refsect2>
+ </refsect1>
+
+ <REFSECT1 ID="R1-APP-PSQL-2">
+  <REFSECT1INFO>
+   <DATE>1998-09-26</DATE>
+  </REFSECT1INFO>
+  <TITLE>
+   Command-line Options
+  </TITLE>
+  <para>
+   <application>psql</application>
+   understands the following command-line options:
+
+   <VARIABLELIST>
+    <VARLISTENTRY>
+     <TERM>
+      -A
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Turn off fill justification when printing out table elements.
       </para>
-      <para>
-   The full set of command-line arguments and meta-commands are described in a subsequent
-   section.
+     </listitem>
+    </varlistentry>
+   
+    <VARLISTENTRY>
+     <TERM>
+      -c <replaceable class="parameter">query</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Specifies that
+       <application>psql</application>
+       is to execute one query string,
+       <replaceable class="parameter">query</replaceable>,
+       and then exit.  This is useful for shell scripts, typically in
+       conjunction with the <option>-q</option> option in shell scripts.
       </para>
-      <para>
-   There are some environment variables which can be used in liu of
-   command line arguments. 
-   Additionally, the <productname>Postgres</productname> frontend library used by 
-   the <application>psql</application> application
-   looks for other optional environment variables to configure, for example,
-   the style of date/time representation and the local time zone. Refer
-   to the chapter on <filename>libpq</filename> in the
-   <citetitle>Programmer's Guide</citetitle> for more details.
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -d <replaceable class="parameter">dbname</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Specifies the name of the database to connect to. This is equivalent to specifying
+       <replaceable class="parameter">dbname</replaceable> as the last field in the
+       command line.
       </para>
-      <para>
-   You may set any of the following environment variables to avoid
-   specifying command-line options:
-   
-   <VARIABLELIST>
-     <VARLISTENTRY>
-       <TERM>
-         <envar>PGHOST</envar>
-       </TERM>
-       <LISTITEM>
-         <PARA>
-       The <acronym>DNS</acronym> host name of the database server.
-       Setting <envar>PGHOST</envar> to a non-zero-length string causes
-       <acronym>TCP/IP</acronym> communication
-       to be used, rather than the default local Unix domain sockets.
-         </PARA>
-       </LISTITEM>
-     </VARLISTENTRY>
-     
-     <VARLISTENTRY>
-       <TERM>
-         <envar>PGPORT</envar>
-       </TERM>
-       <LISTITEM>
-         <PARA>
-       The port number on which a <productname>Postgres</productname> server is listening.
-       Defaults to <literal>5432</literal>.
-         </PARA>
-       </LISTITEM>
-     </VARLISTENTRY>
-     
-     <VARLISTENTRY>
-       <TERM>
-         <envar>PGTTY</envar>
-       </TERM>
-       <LISTITEM>
-         <PARA>
-       The target for display of messages from the client support library.
-       Not required.
-         </PARA>
-       </LISTITEM>
-     </VARLISTENTRY>
-
-     <VARLISTENTRY>
-       <TERM>
-         <envar>PGOPTION</envar>
-       </TERM>
-       <LISTITEM>
-         <PARA>
-       If <envar>PGOPTION</envar>
-       is specified, then the options it contains are parsed
-       <emphasis>before</emphasis>
-       any command-line options.
-         </PARA>
-       </LISTITEM>
-     </VARLISTENTRY>
-     
-     <VARLISTENTRY>
-       <TERM>
-         <envar>PGREALM</envar>
-       </TERM>
-       <LISTITEM>
-         <PARA>
-       <envar>PGREALM</envar>
-       only applies if
-       <productname>Kerberos</productname>
-       authentication is in use.  
-       If this environment variable is set, <productname>Postgres</productname>
-       will attempt authentication with servers for this realm and will use
-       separate ticket files to avoid conflicts with local ticket files.
-       See the <citetitle>PostgreSQL Administrator's Guide</citetitle>
-       for additional information on
-       <productname>Kerberos</productname>.
-         </para>
-       </listitem>
-     </varlistentry>
-   </variablelist>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -e
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Echo the query sent to the backend
       </para>
-    </refsect2>
-
-    <REFSECT2 ID="R2-APP-PSQL-2">
-      <REFSECT2INFO>
-   <DATE>1998-09-26</DATE>
-      </REFSECT2INFO>
-      <TITLE>
-   Outputs
-      </TITLE>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -E
+     </TERM>
+     <LISTITEM>
       <PARA>
-   
-   <application>psql</application>
-   returns 0 to the shell on successful completion of all queries,
-   1 for errors, 2 for abrupt disconnection from the backend.
-   The default TAB delimiter is used.
-   <application>psql</application>
-   will also return 1 if the connection to a database could not be made for
-   any reason.
+       Echo the actual query generated by \d and other backslash commands
       </para>
-    </refsect2>
-  </refsynopsisdiv>
-  
-  <REFSECT1 ID="R1-APP-PSQL-1">
-    <REFSECT1INFO>
-      <DATE>1998-09-26</DATE>
-    </REFSECT1INFO>
-    <TITLE>
-      Description
-    </TITLE>
-    <PARA>
-      <application>psql</application> is a character-based front-end to 
-      <productname>Postgres</productname>.
-      It enables you to
-      type in queries interactively, issue them to <productname>Postgres</productname>, 
-      and see the query
-      results.
-    </para>
-    <para>
-      <application>psql</application>
-      is a <productname>Postgres</productname> client application.  Hence, a
-      <application>postmaster</application> process
-      must be running on the database server host before
-      <application>psql</application>
-      is executed.  In addition, the correct parameters to identify
-      the database server, such as the
-      <application>postmaster</application> host name,
-      may need to be specified
-      as described below.
-    </para>
-    <para>
-      When
-      <application>psql</application>
-      starts, it reads SQL commands from
-      <filename>/etc/psqlrc</filename>
-      and then from
-      <filename>$(<envar>HOME</envar>)/.psqlrc</filename>
-      This allows SQL commands like
-      <command>SET</command>
-      which can be used to set the date style to be run at the start of
-      every session.
-    </para>
-
-    <REFSECT2 ID="R2-APP-PSQL-3">
-      <REFSECT2INFO>
-   <DATE>1998-09-26</DATE>
-      </REFSECT2INFO>
-      <TITLE>
-   Connecting To A Database
-      </TITLE>
-      <para>
-   <application>psql</application>
-   attempts to make a connection to the database at the hostname and
-   port number specified on the command line.   If the connection could not
-   be made for any reason (e.g. insufficient privileges, postmaster is not
-   running on the server, etc)
-   .IR <application>psql</application>
-   will return an error that says
-   <programlisting>
-     Connection to database failed.
-   </programlisting>
-   The reason for the connection failure is not provided.
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -f <replaceable class="parameter">filename</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Use the file <replaceable class="parameter">filename</replaceable>
+       as the source of queries instead of reading queries interactively.
+       This file must be specified for and visible to the client frontend.
       </para>
-    </refsect2>
-
-    <REFSECT2 ID="R2-APP-PSQL-4">
-      <REFSECT2INFO>
-   <DATE>1998-09-26</DATE>
-      </REFSECT2INFO>
-      <TITLE>
-   Entering Queries
-      </TITLE>
-      <para>
-   In normal operation, 
-   <application>psql</application> provides a prompt with the name of the
-   database that <application>psql</application> is current connected to 
-   followed by the string "=>".
-   For example,
-   <programlisting>
-     $ <userinput>psql testdb</userinput>
-     Welcome to the POSTGRESQL interactive sql monitor:
-     Please read the file COPYRIGHT for copyright terms of POSTGRESQL
-     
-     type \e? for help on slash commands
-     type \eq to quit
-     type \eg or terminate with semicolon to execute query
-     You are currently connected to the database: testdb
-     
-     testdb=>
-   </programlisting>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -F <replaceable class="parameter">separator</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Use <replaceable class="parameter">separator</replaceable>
+       as the field separator.
+       The default is an ASCII vertical bar ("|").
       </para>
-      <para>
-   At the prompt, the user may type in <acronym>SQL</acronym> queries.  
-   Unless the -S option
-   is set, input lines are sent to the backend when a query-terminating
-   semicolon is reached.
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -h <replaceable class="parameter">hostname</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Specifies the host name of the machine on which the
+       <application>postmaster</application>
+       is running.
+       Without this option, communication is performed using
+       local Unix domain sockets.
       </para>
-      <para>
-   Whenever a query is executed, 
-   <application>psql</application> also polls for asynchronous notification
-   events generated by <command>LISTEN</command> and <command>NOTIFY</command>.
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -H
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Turns on
+       <acronym>HTML 3.0</acronym>
+       tabular output.
       </para>
-      <para>
-   <application>psql</application>
-   can be used in a pipe sequence, and automatically detects when it
-   is not listening or talking to a real tty.
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -l
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Lists all available databases, then exit. Other non-connection options are ignored.
       </para>
-    </refsect2>
-  </refsect1>
-
-  <REFSECT1 ID="R1-APP-PSQL-2">
-    <REFSECT1INFO>
-      <DATE>1998-09-26</DATE>
-    </REFSECT1INFO>
-    <TITLE>
-      Command-line Options
-    </TITLE>
-    <para>
-      <application>psql</application>
-      understands the following command-line options:
-
-      <VARIABLELIST>
-   <VARLISTENTRY>
-     <TERM>
-       -A
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Turn off fill justification when printing out table elements.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -c <replaceable class="parameter">query</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Specifies that
-         <application>psql</application>
-         is to execute one query string,
-         <replaceable class="parameter">query</replaceable>,
-         and then exit.  This is useful for shell scripts, typically in
-         conjunction with the <option>-q</option> option in shell scripts.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -d <replaceable class="parameter">dbname</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Specifies the name of the database to connect to. This is equivalent to specifying
-         <replaceable class="parameter">dbname</replaceable> as the last field in the
-         command line.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -e
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Echo the query sent to the backend
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       -E
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Echo the actual query generated by \d and other backslash commands
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       -f <replaceable class="parameter">filename</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Use the file <replaceable class="parameter">filename</replaceable>
-         as the source of queries instead of reading queries interactively.
-         This file must be specified for and visible to the client frontend.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -F <replaceable class="parameter">separator</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Use <replaceable class="parameter">separator</replaceable>
-         as the field separator.
-         The default is an ASCII vertical bar ("|").
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       -h <replaceable class="parameter">hostname</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Specifies the host name of the machine on which the
-         <application>postmaster</application>
-         is running.
-         Without this option, communication is performed using
-         local Unix domain sockets.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -H
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Turns on
-         <acronym>HTML 3.0</acronym>
-         tabular output.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -l
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Lists all available databases, then exit. Other non-connection options are ignored.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -n
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Do not use the readline library for input line editing and command history.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -o <replaceable class="parameter">filename</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Put all output into file <replaceable class="parameter">filename</replaceable>.
-         The path must be writable by the client.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -p <replaceable class="parameter">port</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Specifies the TCP/IP port or, by omission, the local Unix domain socket file
-         extension on which the
-         <application>postmaster</application>
-         is listening for connections.  Defaults to the value of the
-         <envar>PGPORT</envar>
-         environment variable, if set, or to 5432.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -q
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Specifies that
-         <application>psql</application>
-         should do its work quietly.  By default, it
-         prints welcome and exit messages and prompts for each query, and prints
-         out the number of rows returned from a query.
-         If this option is used, none of this happens. This is useful with the
-         <option>-c</option> option.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -s
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Run in single-step mode where the user is prompted for each query before
-         it is sent to the backend.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -S
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Runs in single-line mode where each query is terminated by a newline,
-         instead of a semicolon.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -t
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Turn off printing of column names.
-         This is useful with the
-         <option>-c</option>
-         option in shell scripts.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -T <replaceable class="parameter">table_options</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Allows you to specify options to be placed within the
-         <sgmltag>table ...</sgmltag> tag for <acronym>HTML 3.0</acronym>
-         tabular output.For example, <literal>border</literal>
-         will give you tables with borders.
-         This must be used in conjunction with the <option>-H</option> option.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       -u
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Asks the user for the user name and password before connecting to the database.
-         If the database does not require password authentication then these are
-         ignored.  If the option is not used (and the PGPASSWORD environment variable
-         is not set) and the database requires password authentication, then the
-         connection will fail.  The user name is ignored anyway.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       -x
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Turns on extended row format mode. When enabled each row will have its column
-         names printed on the left with the column values printed on the right.
-         This is useful for rows which are otherwise too long to fit into
-         one screen line. HTML row output supports this mode also.
-       </para>
-     </listitem>
-   </varlistentry>
-      </variablelist>
-    </para>
-    <para>
-      You may set environment variables to avoid typing some of the above
-      options.  See the section on environment variables below.
-    </para>
-  </refsect1>
-
-  <REFSECT1 ID="R1-APP-PSQL-3">
-    <REFSECT1INFO>
-      <DATE>1998-09-26</DATE>
-    </REFSECT1INFO>
-    <TITLE>
-      <application>psql</application> Meta-Commands
-    </TITLE>
-    <para>
-      Anything you enter in <application>psql</application> 
-      that begins with an unquoted backslash is a <application>psql</application>
-      meta-command.  Anything else is <acronym>SQL</acronym>
-      and simply goes into the current query buffer
-      (and once you have at least one complete query, it gets automatically 
-      submitted to the backend).  
-      <Application>psql</Application> meta-commands are also called slash commands.
-    </para>
-    <para>
-      The format of a <application>psql</application> command is the backslash, 
-      followed immediately by
-      a command verb, then any arguments.  The arguments are separated from the
-      command verb and each other by any number of white space characters.
-    </para>
-    <para>
-      With single character command verbs, you don't actually need to separate the
-      command verb from the argument with white space, for historical reasons.
-      You should anyway.
-    </para>
-    <para>
-      The following meta-commands are defined:
-
-      <VARIABLELIST>
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\a</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Toggle field alignment when printing out table elements.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\C</literal> <replaceable class="parameter">caption</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Set the HTML3.0 table caption to 
-         <quote><replaceable class="parameter">caption</replaceable></quote>.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\connect</literal> <replaceable class="parameter">dbname</replaceable> [ <replaceable class="parameter">username</replaceable> ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Establish a connection to a new database, using the default 
-         <replaceable class="parameter">username</replaceable> if none is specified.
-         The previous connection is closed.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\copy</literal> <replaceable class="parameter">dbname</replaceable> { FROM | TO } <replaceable class="parameter">filename</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Perform a frontend (client) copy.  This is an operation that runs a SQL COPY command,
-         but instead of the backend reading or writing the specified file, and 
-         consequently requiring backend access and special user privilege, 
-         <application>psql</application> reads or writes the 
-         file and routes the data to or from the backend.  The default <literal>tab</literal>
-         delimiter is used.
-       </para>
-       <tip>
-         <para>
-       This operation is not as efficient as the <acronym>SQL</acronym> 
-       <command>COPY</command> command because all data must pass through the
-       client/server IP or socket connection. For large amounts of data this other
-       technique may be preferable.
-         </para>
-       </tip>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\d</literal> [ <replaceable class="parameter">table</replaceable> ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List tables in the database, or if <replaceable class="parameter">table</replaceable>
-         is specified, list the columns in that table.
-         If table name is specified as an asterisk (<quote>*</quote>),
-         list all tables and column information for each tables.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\da</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List all available aggregates.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\dd</literal> <replaceable class="parameter">object</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List the description from <literal>pg_description</literal>
-         of the specified object, which can be a
-         table, table.column, type, operator, or aggregate.
-       </para>
-       <tip>
-         <para>
-       Not all objects have a description in <literal>pg_description</literal>.
-       This meta-command can be useful to get a quick description of a native
-       <productname>Postgres</productname> feature.
-         </para>
-       </tip>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\df</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List functions.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\di</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List only indexes.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\do</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List only operators.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\ds</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List only sequences.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\dS</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List system tables and indexes.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\dt</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List only non-system tables.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\dT</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List types.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\e</literal> [ <replaceable class="parameter">filename</replaceable> ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Edit the current query buffer or the contents of the file
-         <replaceable class="parameter">filename</replaceable>.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\E</literal> [ <replaceable class="parameter">filename</replaceable> ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Edit the current query buffer or the contents of the file
-         <replaceable class="parameter">filename</replaceable>
-         and execute it upon editor exit.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\f</literal> [ <replaceable class="parameter">separator</replaceable> ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Set the field separator.  Default is a single blank space.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\g</literal> [ { <replaceable class="parameter">filename</replaceable> | <literal>|</literal><replaceable class="parameter">command</replaceable> } ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Send the current query input buffer to the backend and optionally
-         save the output in <replaceable class="parameter">filename</replaceable>
-         or pipe the output into a separate Unix shell to execute
-         <replaceable class="parameter">command</replaceable>.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\h</literal> [ <replaceable class="parameter">command</replaceable> ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Give syntax help on the specified SQL command.  
-         If <replaceable class="parameter">command</replaceable> is not a defined SQL command
-         (or is not documented in <application>psql</application>), or if
-         <replaceable class="parameter">command</replaceable> is not specified,
-         then <application>psql</application> will 
-         list all the commands for which syntax help is
-         available.  If <replaceable class="parameter">command</replaceable>
-         is an asterisk (<quote>*</quote>), then
-         give syntax help on all SQL commands.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\H</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Toggle <acronym>HTML3</acronym> output. This is equivalent to the <option>-H</option>
-         command-line option.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\i</literal> <replaceable class="parameter">filename</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Read queries from the file <replaceable class="parameter">filename</replaceable>
-         into the query input buffer.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\l</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         List all the databases in the server.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\m</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Toggle the old monitor-like table display, which includes border characters
-         surrounding the table.
-         This is standard SQL output.
-         By default, <application>psql</application> includes only field separators
-         between columns.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\o</literal> [ { <replaceable class="parameter">filename</replaceable> | <literal>|</literal><replaceable class="parameter">command</replaceable> } ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Save future query results to the file
-         <replaceable class="parameter">filename</replaceable> or pipe future
-         results into a separate Unix shell to execute
-         <replaceable class="parameter">command</replaceable>.
-         If no arguments are specified, send query results to
-         <filename>stdout</filename>.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\p</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Print the current query buffer.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\q</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Quit the <application>psql</application> program.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\r</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Reset(clear) the query buffer.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\s</literal> [ <replaceable class="parameter">filename</replaceable> ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Print or save the command line history to 
-         <replaceable class="parameter">filename</replaceable>.
-         If <replaceable class="parameter">filename</replaceable> is omitted,
-         do not save subsequent commands to a history file.
-         This option is only available if <application>psql</application> is
-         configured to use readline.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\t</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Toggle display of output column name headings and row count footer (defaults to on).
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\T</literal> <replaceable class="parameter">table_options</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Allows you to specify options to be placed within the
-         <sgmltag>table ...</sgmltag> tag
-         for <acronym>HTML 3.0</acronym>
-         tabular output.For example, <literal>border</literal>
-         will give you tables with borders.
-         This must be used in conjunction with the <command>\H</command> meta-command.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\x</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Toggles extended row format mode. When enabled each row will have its column
-         names printed on the left with the column values printed on the right.
-         This is useful for rows which are otherwise too long to fit into
-         one screen line. <acronym>HTML</acronym> row output mode supports this flag too.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\w</literal> <replaceable class="parameter">filename</replaceable>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Outputs the current query buffer to the file
-         <replaceable class="parameter">filename</replaceable>.
-       </para>
-     </listitem>
-   </varlistentry>
-   
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\z</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Produces a list of all tables in the database with their appropriate ACLs
-         (grant/revoke permissions) listed.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\!</literal> [ <replaceable class="parameter">command</replaceable> ]
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Escape to a separate Unix shell or execute the Unix command
-         <replaceable class="parameter">command</replaceable>.
-       </para>
-     </listitem>
-   </varlistentry>
-
-   <VARLISTENTRY>
-     <TERM>
-       <literal>\?</literal>
-     </TERM>
-     <LISTITEM>
-       <PARA>
-         Get help information about the slash (<quote>\</quote>) commands.
-       </para>
-     </listitem>
-   </varlistentry>
-      </variablelist>
-    </para>
-  </refsect1>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -n
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Do not use the readline library for input line editing and command history.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -o <replaceable class="parameter">filename</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Put all output into file <replaceable class="parameter">filename</replaceable>.
+       The path must be writable by the client.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -p <replaceable class="parameter">port</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Specifies the TCP/IP port or, by omission, the local Unix domain socket file
+       extension on which the
+       <application>postmaster</application>
+       is listening for connections.  Defaults to the value of the
+       <envar>PGPORT</envar>
+       environment variable, if set, or to 5432.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -q
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Specifies that
+       <application>psql</application>
+       should do its work quietly.  By default, it
+       prints welcome and exit messages and prompts for each query, and prints
+       out the number of rows returned from a query.
+       If this option is used, none of this happens. This is useful with the
+       <option>-c</option> option.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -s
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Run in single-step mode where the user is prompted for each query before
+       it is sent to the backend.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -S
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Runs in single-line mode where each query is terminated by a newline,
+       instead of a semicolon.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -t
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Turn off printing of column names.
+       This is useful with the
+       <option>-c</option>
+       option in shell scripts.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -T <replaceable class="parameter">table_options</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Allows you to specify options to be placed within the
+       <sgmltag>table ...</sgmltag> tag for <acronym>HTML 3.0</acronym>
+       tabular output.For example, <literal>border</literal>
+       will give you tables with borders.
+       This must be used in conjunction with the <option>-H</option> option.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -u
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Asks the user for the user name and password before connecting to the database.
+       If the database does not require password authentication then these are
+       ignored.  If the option is not used (and the PGPASSWORD environment variable
+       is not set) and the database requires password authentication, then the
+       connection will fail.  The user name is ignored anyway.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      -x
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Turns on extended row format mode. When enabled each row will have its column
+       names printed on the left with the column values printed on the right.
+       This is useful for rows which are otherwise too long to fit into
+       one screen line. HTML row output supports this mode also.
+      </para>
+     </listitem>
+    </varlistentry>
+   </variablelist>
+  </para>
+  <para>
+   You may set environment variables to avoid typing some of the above
+   options.  See the section on environment variables below.
+  </para>
+ </refsect1>
+
+ <REFSECT1 ID="R1-APP-PSQL-3">
+  <REFSECT1INFO>
+   <DATE>1998-09-26</DATE>
+  </REFSECT1INFO>
+  <TITLE>
+   <application>psql</application> Meta-Commands
+  </TITLE>
+  <para>
+   Anything you enter in <application>psql</application> 
+   that begins with an unquoted backslash is a <application>psql</application>
+   meta-command.  Anything else is <acronym>SQL</acronym>
+   and simply goes into the current query buffer
+   (and once you have at least one complete query, it gets automatically 
+   submitted to the backend).  
+   <Application>psql</Application> meta-commands are also called slash commands.
+  </para>
+  <para>
+   The format of a <application>psql</application> command is the backslash, 
+   followed immediately by
+   a command verb, then any arguments.  The arguments are separated from the
+   command verb and each other by any number of white space characters.
+  </para>
+  <para>
+   With single character command verbs, you don't actually need to separate the
+   command verb from the argument with white space, for historical reasons.
+   You should anyway.
+  </para>
+  <para>
+   The following meta-commands are defined:
+
+   <VARIABLELIST>
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\a</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Toggle field alignment when printing out table elements.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\C</literal> <replaceable class="parameter">caption</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Set the HTML3.0 table caption to 
+       <quote><replaceable class="parameter">caption</replaceable></quote>.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\connect</literal> <replaceable class="parameter">dbname</replaceable> [ <replaceable class="parameter">username</replaceable> ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Establish a connection to a new database, using the default 
+       <replaceable class="parameter">username</replaceable> if none is specified.
+       The previous connection is closed.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\copy</literal> <replaceable class="parameter">dbname</replaceable> { FROM | TO } <replaceable class="parameter">filename</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Perform a frontend (client) copy.  This is an operation that runs a SQL COPY command,
+       but instead of the backend reading or writing the specified file, and 
+       consequently requiring backend access and special user privilege, 
+       <application>psql</application> reads or writes the 
+       file and routes the data to or from the backend.  The default <literal>tab</literal>
+       delimiter is used.
+      </para>
+      <tip>
+       <para>
+   This operation is not as efficient as the <acronym>SQL</acronym> 
+   <command>COPY</command> command because all data must pass through the
+   client/server IP or socket connection. For large amounts of data this other
+   technique may be preferable.
+       </para>
+      </tip>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\d</literal> [ <replaceable class="parameter">table</replaceable> ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List tables in the database, or if <replaceable class="parameter">table</replaceable>
+       is specified, list the columns in that table.
+       If table name is specified as an asterisk (<quote>*</quote>),
+       list all tables and column information for each tables.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\da</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List all available aggregates.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\dd</literal> <replaceable class="parameter">object</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List the description from <literal>pg_description</literal>
+       of the specified object, which can be a
+       table, table.column, type, operator, or aggregate.
+      </para>
+      <tip>
+       <para>
+   Not all objects have a description in <literal>pg_description</literal>.
+   This meta-command can be useful to get a quick description of a native
+   <productname>Postgres</productname> feature.
+       </para>
+      </tip>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\df</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List functions.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\di</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List only indexes.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\do</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List only operators.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\ds</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List only sequences.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\dS</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List system tables and indexes.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\dt</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List only non-system tables.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\dT</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List types.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\e</literal> [ <replaceable class="parameter">filename</replaceable> ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Edit the current query buffer or the contents of the file
+       <replaceable class="parameter">filename</replaceable>.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\E</literal> [ <replaceable class="parameter">filename</replaceable> ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Edit the current query buffer or the contents of the file
+       <replaceable class="parameter">filename</replaceable>
+       and execute it upon editor exit.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\f</literal> [ <replaceable class="parameter">separator</replaceable> ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Set the field separator.  Default is a single blank space.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\g</literal> [ { <replaceable class="parameter">filename</replaceable> | <literal>|</literal><replaceable class="parameter">command</replaceable> } ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Send the current query input buffer to the backend and optionally
+       save the output in <replaceable class="parameter">filename</replaceable>
+       or pipe the output into a separate Unix shell to execute
+       <replaceable class="parameter">command</replaceable>.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\h</literal> [ <replaceable class="parameter">command</replaceable> ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Give syntax help on the specified SQL command.  
+       If <replaceable class="parameter">command</replaceable> is not a defined SQL command
+       (or is not documented in <application>psql</application>), or if
+       <replaceable class="parameter">command</replaceable> is not specified,
+       then <application>psql</application> will 
+       list all the commands for which syntax help is
+       available.  If <replaceable class="parameter">command</replaceable>
+       is an asterisk (<quote>*</quote>), then
+       give syntax help on all SQL commands.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\H</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Toggle <acronym>HTML3</acronym> output. This is equivalent to the <option>-H</option>
+       command-line option.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\i</literal> <replaceable class="parameter">filename</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Read queries from the file <replaceable class="parameter">filename</replaceable>
+       into the query input buffer.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\l</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       List all the databases in the server.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\m</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Toggle the old monitor-like table display, which includes border characters
+       surrounding the table.
+       This is standard SQL output.
+       By default, <application>psql</application> includes only field separators
+       between columns.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\o</literal> [ { <replaceable class="parameter">filename</replaceable> | <literal>|</literal><replaceable class="parameter">command</replaceable> } ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Save future query results to the file
+       <replaceable class="parameter">filename</replaceable> or pipe future
+       results into a separate Unix shell to execute
+       <replaceable class="parameter">command</replaceable>.
+       If no arguments are specified, send query results to
+       <filename>stdout</filename>.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\p</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Print the current query buffer.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\q</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Quit the <application>psql</application> program.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\r</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Reset(clear) the query buffer.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\s</literal> [ <replaceable class="parameter">filename</replaceable> ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Print or save the command line history to 
+       <replaceable class="parameter">filename</replaceable>.
+       If <replaceable class="parameter">filename</replaceable> is omitted,
+       do not save subsequent commands to a history file.
+       This option is only available if <application>psql</application> is
+       configured to use readline.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\t</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Toggle display of output column name headings and row count footer (defaults to on).
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\T</literal> <replaceable class="parameter">table_options</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Allows you to specify options to be placed within the
+       <sgmltag>table ...</sgmltag> tag
+       for <acronym>HTML 3.0</acronym>
+       tabular output.For example, <literal>border</literal>
+       will give you tables with borders.
+       This must be used in conjunction with the <command>\H</command> meta-command.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\x</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Toggles extended row format mode. When enabled each row will have its column
+       names printed on the left with the column values printed on the right.
+       This is useful for rows which are otherwise too long to fit into
+       one screen line. <acronym>HTML</acronym> row output mode supports this flag too.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\w</literal> <replaceable class="parameter">filename</replaceable>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Outputs the current query buffer to the file
+       <replaceable class="parameter">filename</replaceable>.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\z</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Produces a list of all tables in the database with their appropriate ACLs
+       (grant/revoke permissions) listed.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\!</literal> [ <replaceable class="parameter">command</replaceable> ]
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Escape to a separate Unix shell or execute the Unix command
+       <replaceable class="parameter">command</replaceable>.
+      </para>
+     </listitem>
+    </varlistentry>
+
+    <VARLISTENTRY>
+     <TERM>
+      <literal>\?</literal>
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       Get help information about the slash (<quote>\</quote>) commands.
+      </para>
+     </listitem>
+    </varlistentry>
+   </variablelist>
+  </para>
+ </refsect1>
 </refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:nil
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../reference.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:"/usr/lib/sgml/CATALOG"
+sgml-local-ecat-files:nil
+End:
+-->
index bac4c0691480152a1aefb2053a2dc767baaa1843..12c9e47fcc56a964139e9efb87b10561a3631ac4 100644 (file)
 <REFENTRY ID="SQL-SET">
-<REFMETA>
-<REFENTRYTITLE>
-SET
-</REFENTRYTITLE>
-<REFMISCINFO>SQL - Language Statements</REFMISCINFO>
-</REFMETA>
-<REFNAMEDIV>
-<REFNAME>
-SET
-</REFNAME>
-<REFPURPOSE>
+ <REFMETA>
+  <REFENTRYTITLE>
+   SET
+  </REFENTRYTITLE>
+  <REFMISCINFO>SQL - Language Statements</REFMISCINFO>
+ </REFMETA>
+ <REFNAMEDIV>
+  <REFNAME>
+   SET
+  </REFNAME>
+  <REFPURPOSE>
    Set run-time parameters for session
-</REFPURPOSE>
-  </refnamediv>
-<REFSYNOPSISDIV>
-<REFSYNOPSISDIVINFO>
-<DATE>1998-09-24</DATE>
-</REFSYNOPSISDIVINFO>
-<SYNOPSIS>
-<REPLACEABLE CLASS="PARAMETER">
-</REPLACEABLE>
+  </REFPURPOSE>
+ </refnamediv>
+ <REFSYNOPSISDIV>
+  <REFSYNOPSISDIVINFO>
+   <DATE>1998-09-24</DATE>
+  </REFSYNOPSISDIVINFO>
+  <SYNOPSIS>
 SET <REPLACEABLE CLASS="PARAMETER">variable</REPLACEABLE> { TO | = } { '<REPLACEABLE CLASS="PARAMETER">value</REPLACEABLE>' | DEFAULT }
 SET TIME ZONE { '<REPLACEABLE CLASS="PARAMETER">timezone</REPLACEABLE>' | LOCAL };
-</SYNOPSIS>
+  </SYNOPSIS>
 
-   <REFSECT2 ID="R2-SQL-SET-1">
-     <REFSECT2INFO>
-       <DATE>1998-09-24</DATE>
-     </REFSECT2INFO>
-     <TITLE>
-       Inputs
-     </TITLE>
-     <PARA>
+  <REFSECT2 ID="R2-SQL-SET-1">
+   <REFSECT2INFO>
+    <DATE>1998-09-24</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Inputs
+   </TITLE>
+   <PARA>
        
-       <VARIABLELIST>
-         <VARLISTENTRY>
-           <TERM>
-             <REPLACEABLE CLASS="PARAMETER">variable</REPLACEABLE>
-           </TERM>
-           <LISTITEM>
-             <para>
-               Settable global parameter.
-             </para>
-           </listitem>
-         </varlistentry>
-         <varlistentry>
-           <term>
-             <REPLACEABLE CLASS="PARAMETER">value</REPLACEABLE>
-           </term>
-           <listitem>
-             <PARA>
-               New value of parameter.
-             </para>
-           </listitem>
-         </varlistentry>
-       </variablelist>
-     </para>
-     <para>
-       The possible variables and allowed values are:
+    <VARIABLELIST>
+     <VARLISTENTRY>
+      <TERM>
+       <REPLACEABLE CLASS="PARAMETER">variable</REPLACEABLE>
+      </TERM>
+      <LISTITEM>
+       <para>
+   Settable global parameter.
+       </para>
+      </listitem>
+     </varlistentry>
+     <varlistentry>
+      <term>
+       <REPLACEABLE CLASS="PARAMETER">value</REPLACEABLE>
+      </term>
+      <listitem>
+       <PARA>
+   New value of parameter.
+       </para>
+      </listitem>
+     </varlistentry>
+    </variablelist>
+   </para>
+   <para>
+    The possible variables and allowed values are:
        
-       <VARIABLELIST>
-         <VARLISTENTRY>
-           <TERM>
-             DateStyle
-           </TERM>
-           <LISTITEM>
-             <PARA>
+    <VARIABLELIST>
+     <VARLISTENTRY>
+      <TERM>
+       DateStyle
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   
+   <VARIABLELIST>
+    <VARLISTENTRY>
+     <TERM>
+      ISO
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       use ISO 8601-style dates and times
+      </para>
+     </listitem>
+    </varlistentry>
+    <VARLISTENTRY>
+     <TERM>
+      SQL
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       use Oracle/Ingres-style dates and times
+      </para>
+     </listitem>
+    </varlistentry>
+    <VARLISTENTRY>
+     <TERM>
+      Postgres
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       use traditional <productname>Postgres</productname> format
+      </para>
+     </listitem>
+    </varlistentry>
+    <VARLISTENTRY>
+     <TERM>
+      European
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       use dd/mm/yyyy for numeric date representations.
+      </para>
+     </listitem>
+    </varlistentry>
+    <VARLISTENTRY>
+     <TERM>
+      NonEuropean
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       use mm/dd/yyyy for numeric date representations.
+      </para>
+     </listitem>
+    </varlistentry>
+    <VARLISTENTRY>
+     <TERM>
+      German
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       use dd.mm.yyyy for numeric date representations.
+      </para>
+     </listitem>
+    </varlistentry>
+    <VARLISTENTRY>
+     <TERM>
+      US
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       same as 'NonEuropean'
+      </para>
+     </listitem>
+    </varlistentry>
+    <VARLISTENTRY>
+     <TERM>
+      default
+     </TERM>
+     <LISTITEM>
+      <PARA>
+       restores the default values ('US,Postgres')
+      </para>
+     </listitem>
+    </varlistentry>
+   </variablelist>
+       </para>
+      </listitem>
+     </varlistentry>
+    </variablelist>
+   </para>
+   <para>
+    Date format initialization my be done by:
+    <simplelist>
+     <member>
+      Setting PGDATESTYLE environment variable.
+     </member>
+     <member>
+      Running postmaster using -oe parameter to set
+      dates to the 'European' convention.
+      Note that this affects only the some combinations of date styles; for example
+      the ISO style is not affected by this parameter.
+     </member>
+     <member>
+      Changing variables in 
+      <filename>src/backend/utils/init/globals.c</filename>.
+     </member>
+    </simplelist>
+   </para>
+   <para>
+    The variables in <filename>globals.c</filename> which can be changed are:
+    <simplelist>
+     <member>
+      bool EuroDates = false | true
+     </member>
+     <member>
+      int  DateStyle = USE_ISO_DATES | USE_POSTGRES_DATES | USE_SQL_DATES | USE_GERMAN_DATES
+     </member>
+    </simplelist>
+
+   </para>
+   <para>
+    <variablelist>
+     <varlistentry>
+      <term>
+       TIMEZONE
+      </term>
+      <listitem>
+       <para>
+   The possible values for timezone depends on your operating
+   system. For example on Linux /usr/lib/zoneinfo contains the
+   database of timezones.
+       </para>
+       <para>
+   Here are some valid values for timezone:
                
-               <VARIABLELIST>
-                 <VARLISTENTRY>
-                   <TERM>
-                     ISO
-                   </TERM>
-                   <LISTITEM>
-                     <PARA>
-                       use ISO 8601-style dates and times
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 <VARLISTENTRY>
-                   <TERM>
-                     SQL
-                   </TERM>
-                   <LISTITEM>
-                     <PARA>
-                       use Oracle/Ingres-style dates and times
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 <VARLISTENTRY>
-                   <TERM>
-                     Postgres
-                   </TERM>
-                   <LISTITEM>
-                     <PARA>
-                       use traditional <productname>Postgres</productname> format
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 <VARLISTENTRY>
-                   <TERM>
-                     European
-                   </TERM>
-                   <LISTITEM>
-                     <PARA>
-                       use dd/mm/yyyy for numeric date representations.
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 <VARLISTENTRY>
-                   <TERM>
-                     NonEuropean
-                   </TERM>
-                   <LISTITEM>
-                     <PARA>
-                       use mm/dd/yyyy for numeric date representations.
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 <VARLISTENTRY>
-                   <TERM>
-                     German
-                   </TERM>
-                   <LISTITEM>
-                     <PARA>
-                       use dd.mm.yyyy for numeric date representations.
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 <VARLISTENTRY>
-                   <TERM>
-                     US
-                   </TERM>
-                   <LISTITEM>
-                     <PARA>
-                       same as 'NonEuropean'
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 <VARLISTENTRY>
-                   <TERM>
-                     default
-                   </TERM>
-                   <LISTITEM>
-                     <PARA>
-                       restores the default values ('US,Postgres')
-                     </para>
-                   </listitem>
-                 </varlistentry>
-               </variablelist>
-             </para>
-           </listitem>
-         </varlistentry>
-       </variablelist>
-     </para>
+   <variablelist>
+    <varlistentry>
+     <term>
+      'PST8PDT'
+     </term>
+     <listitem>
+      <para>
+       set the timezone for California
+      </para>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term>
+      'Portugal'
+     </term>
+     <listitem>
+      <para>
+       set time zone for Portugal.
+      </para>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term>
+      'Europe/Rome'
+     </term>
+     <listitem>
+      <para>
+       set time zone for Italy.
+      </para>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term>
+      DEFAULT
+     </term>
+     <listitem>
+      <para>
+       set time zone to your local timezone
+       (value of the TZ environment variable).
+      </para>
+     </listitem>
+    </varlistentry>
+   </variablelist>
+       </para>
+       <para>
+   If an invalid time zone is specified, the time zone
+   becomes GMT (on most systems anyway).
+       </para>
+       <para>
+   A frontend which uses libpq may be initialized by setting the PGTZ
+   environment variable.
+       </para>
+       <para>
+   The second syntax shown above, allows one to set the timezone
+   with a syntax similar to SQL92 <command>SET TIME ZONE</command>.
+   The LOCAL keyword is just an alternate form
+   of DEFAULT for SQL92 compatibility.
+       </para>
+      </listitem>
+     </varlistentry>
+    </variablelist>
+   </para>
+   <para>
+    There are also several internal or optimization
+    parameters which can be specified
+    by the <command>SET</command> command:
+    
+    <variablelist>
+     <varlistentry>
+      <term>
+       COST_HEAP
+      </term>
+      <listitem>
+       <para>
+   Sets the default cost of a heap scan for use by the optimizer.
+   
+   <variablelist>
+    <varlistentry>
+     <term>
+      <replaceable class="parameter">float4</replaceable>
+     </term>
+     <listitem>
+      <para>
+       Set the cost of a heap scan to the specified floating point value.
+      </para>
+     </listitem>
+    </varlistentry>
+    
+    <varlistentry>
+     <term>
+      DEFAULT
+     </term>
+     <listitem>
+      <para>
+       Sets the cost of a heap scan to the default value.
+      </para>
+     </listitem>
+    </varlistentry>
+   </variablelist>
+       </para>
+       <para>
+   The frontend may be initialized by setting the PGCOSTHEAP
+   environment variable.
+       </para>
+       <variablelist>
+   <varlistentry>
+    <term>
+     COST_INDEX
+    </term>
+    <listitem>
      <para>
-       Date format initialization my be done by:
-       <simplelist>
-         <member>
-           Setting PGDATESTYLE environment variable.
-         </member>
-         <member>
-           Running postmaster using -oe parameter to set
-           dates to the 'European' convention.
-           Note that this affects only the some combinations of date styles; for example
-           the ISO style is not affected by this parameter.
-         </member>
-         <member>
-           Changing variables in 
-           <filename>src/backend/utils/init/globals.c</filename>.
-         </member>
-       </simplelist>
+      Sets the default cost of an index scan for use by the optimizer.
      </para>
+    </listitem>
+   </varlistentry>
+   
+   <varlistentry>
+    <term>
+     <replaceable class="parameter">float4</replaceable>
+    </term>
+    <listitem>
      <para>
-       The variables in <filename>globals.c</filename> which can be changed are:
-       <programlisting>
-         bool EuroDates = false
-         true
-         int  DateStyle = USE_ISO_DATES
-         USE_POSTGRES_DATES
-         USE_ISO_DATES
-         USE_SQL_DATES
-         USE_GERMAN_DATES
-       </programlisting>
+      Set the cost of an index scan to the specified floating point value.
      </para>
+    </listitem>
+   </varlistentry>
+   
+   <varlistentry>
+    <term>
+     DEFAULT
+    </term>
+    <listitem>
      <para>
-       <variablelist>
-         <varlistentry>
-           <term>
-             TIMEZONE
-           </term>
-           <listitem>
-             <para>
-               The possible values for timezone depends on your operating
-               system. For example on Linux /usr/lib/zoneinfo contains the
-               database of timezones.
-             </para>
-             <para>
-               Here are some valid values for timezone:
-               
-               <variablelist>
-                 <varlistentry>
-                   <term>
-                     'PST8PDT'
-                   </term>
-                   <listitem>
-                     <para>
-                       set the timezone for California
-                 </para>
-                   </listitem>
-                 </varlistentry>
-                 <varlistentry>
-                   <term>
-                     'Portugal'
-                   </term>
-                   <listitem>
-                     <para>
-                       set time zone for Portugal.
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 <varlistentry>
-                   <term>
-                     'Europe/Rome'
-                   </term>
-                   <listitem>
-                     <para>
-                       set time zone for Italy.
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 <varlistentry>
-                   <term>
-                     DEFAULT
-                   </term>
-                   <listitem>
-                     <para>
-                       set time zone to your local timezone
-                       (value of the TZ environment variable).
-                     </para>
-                   </listitem>
-                 </varlistentry>
-               </variablelist>
-             </para>
-             <para>
-               If an invalid time zone is specified, the time zone
-               becomes GMT (on most systems anyway).
-             </para>
-             <para>
-               A frontend which uses libpq may be initialized by setting the PGTZ
-               environment variable.
-             </para>
-             <para>
-               The second syntax shown above, allows one to set the timezone
-               with a syntax similar to SQL92 <command>SET TIME ZONE</command>.
-               The LOCAL keyword is just an alternate form
-               of DEFAULT for SQL92 compatibility.
-             </para>
-           </listitem>
-         </varlistentry>
-       </variablelist>
+      Sets the cost of an index scan to the default value.
      </para>
+    </listitem>
+   </varlistentry>
+       </variablelist>
+      </listitem>
+     </varlistentry>
+    </variablelist>
+   </para>
+   <para>
+    The frontend may be initialized by setting the PGCOSTINDEX
+    environment variable.
+    
+    <variablelist>
+     <varlistentry>
+      <term>
+       GEQO
+      </term>
+      <listitem>
+       <para>
+   Sets the threshold for using the genetic optimizer algorithm.
+       </para>
+       
+       <variablelist>
+   <varlistentry>
+    <term>
+     On
+    </term>
+    <listitem>
      <para>
-       There are also several internal or optimization
-       parameters which can be specified
-       by the <command>SET</command> command:
-       
-       <variablelist>
-         <varlistentry>
-           <term>
-             COST_HEAP
-           </term>
-           <listitem>
-             <para>
-               Sets the default cost of a heap scan for use by the optimizer.
-               
-               <variablelist>
-                 <varlistentry>
-                   <term>
-                     <replaceable class="parameter">float4</replaceable>
-                   </term>
-                   <listitem>
-                     <para>
-                       Set the cost of a heap scan to the specified floating point value.
-                     </para>
-                   </listitem>
-                 </varlistentry>
-                 
-                 <varlistentry>
-                   <term>
-                     DEFAULT
-                   </term>
-                   <listitem>
-                     <para>
-                       Sets the cost of a heap scan to the default value.
-                     </para>
-                   </listitem>
-                 </varlistentry>
-               </variablelist>
-             </para>
-             <para>
-               The frontend may be initialized by setting the PGCOSTHEAP
-               environment variable.
-             </para>
-             <variablelist>
-               <varlistentry>
-                 <term>
-                   COST_INDEX
-                 </term>
-                 <listitem>
-                   <para>
-                     Sets the default cost of an index scan for use by the optimizer.
-                   </para>
-                 </listitem>
-               </varlistentry>
-               
-               <varlistentry>
-                 <term>
-                   <replaceable class="parameter">float4</replaceable>
-                 </term>
-                 <listitem>
-                   <para>
-                     Set the cost of an index scan to the specified floating point value.
-                   </para>
-                 </listitem>
-               </varlistentry>
-               
-               <varlistentry>
-                 <term>
-                   DEFAULT
-                 </term>
-                 <listitem>
-                   <para>
-                     Sets the cost of an index scan to the default value.
-                   </para>
-                 </listitem>
-               </varlistentry>
-             </variablelist>
-           </listitem>
-         </varlistentry>
-       </variablelist>
+      enables the genetic optimizer algorithm
+      for statements with 6 or more tables.
      </para>
+    </listitem>
+   </varlistentry>
+   <varlistentry>
+    <term>
+     On=<replaceable class="parameter">#</replaceable>
+    </term>
+    <listitem>
      <para>
-       The frontend may be initialized by setting the PGCOSTINDEX
-       environment variable.
-       
-       <variablelist>
-         <varlistentry>
-           <term>
-             GEQO
-           </term>
-           <listitem>
-             <para>
-               Sets the threshold for using the genetic optimizer algorithm.
-             </para>
-             
-             <variablelist>
-               <varlistentry>
-                 <term>
-                   On
-                 </term>
-                 <listitem>
-                   <para>
-                     enables the genetic optimizer algorithm
-                     for statements with 6 or more tables.
-                   </para>
-                 </listitem>
-               </varlistentry>
-               <varlistentry>
-                 <term>
-                   On=<replaceable class="parameter">#</replaceable>
-                 </term>
-                 <listitem>
-                   <para>
-                     Takes an integer argument to enable the genetic optimizer algorithm
-                     for statements with <replaceable class="parameter">#</replaceable>
-                     or more tables in the query.
-                   </para>
-                 </listitem>
-               </varlistentry>
-               <varlistentry>
-                 <term>
-                   Off
-                 </term>
-                 <listitem>
-                   <para>
-                     disables the genetic optimizer algorithm.
-                   </para>
-                 </listitem>
-               </varlistentry>
-               <varlistentry>
-                 <term>
-                   DEFAULT
-                 </term>
-                 <listitem>
-                   <para>
-                     Equivalent to specifying <command>SET GEQO='on'</command>
-                   </para>
-                 </listitem>
-               </varlistentry>
-             </variablelist>
-           </listitem>
-         </varlistentry>
-       </variablelist>
+      Takes an integer argument to enable the genetic optimizer algorithm
+      for statements with <replaceable class="parameter">#</replaceable>
+      or more tables in the query.
      </para>
+    </listitem>
+   </varlistentry>
+   <varlistentry>
+    <term>
+     Off
+    </term>
+    <listitem>
      <para>
-       This algorithm is on by default, which used GEQO for
-       statements of eleven or more tables.
-       (See the chapter on GEQO in the Programmer's Guide
-       for more information).
+      disables the genetic optimizer algorithm.
      </para>
+    </listitem>
+   </varlistentry>
+   <varlistentry>
+    <term>
+     DEFAULT
+    </term>
+    <listitem>
      <para>
-       The frontend may be initialized by setting PGGEQO
-       environment variable.
+      Equivalent to specifying <command>SET GEQO='on'</command>
      </para>
+    </listitem>
+   </varlistentry>
+       </variablelist>
+      </listitem>
+     </varlistentry>
+    </variablelist>
+   </para>
+   <para>
+    This algorithm is on by default, which used GEQO for
+    statements of eleven or more tables.
+    (See the chapter on GEQO in the Programmer's Guide
+    for more information).
+   </para>
+   <para>
+    The frontend may be initialized by setting PGGEQO
+    environment variable.
+   </para>
+   <para>
+    It may be useful when joining big relations with
+    small ones. This algorithm is off by default.
+    It's not used by GEQO anyway.
+    
+    <variablelist>
+     <varlistentry>
+      <term>
+       KSQO
+      </term>
+      <listitem>
+       <para>
+   <firstterm>Key Set Query Optimizer</firstterm> forces the query optimizer
+   to optimize repetative OR clauses such as generated by
+   <productname>MicroSoft Access</productname>:
+       </para>
+       
+       <variablelist>
+   <varlistentry>
+    <term>
+     On
+    </term>
+    <listitem>
      <para>
-       It may be useful when joining big relations with
-       small ones. This algorithm is off by default.
-       It's not used by GEQO anyway.
-
-       <variablelist>
-         <varlistentry>
-           <term>
-             KSQO
-           </term>
-           <listitem>
-             <para>
-               <firstterm>Key Set Query Optimizer</firstterm> forces the query optimizer
-               to optimize repetative OR clauses such as generated by
-               <productname>MicroSoft Access</productname>:
-             </para>
-             
-             <variablelist>
-               <varlistentry>
-                 <term>
-                   On
-                 </term>
-                 <listitem>
-                   <para>
-                     enables this optimization.
-                   </para>
-                 </listitem>
-               </varlistentry>
-               
-               <varlistentry>
-                 <term>
-                   Off
-                 </term>
-                 <listitem>
-                   <para>
-                     disables this optimization.
-                   </para>
-                 </listitem>
-               </varlistentry>
-               
-               <varlistentry>
-                 <term>
-                   DEFAULT
-                 </term>
-                 <listitem>
-                   <para>
-                     Equivalent to specifying <command>SET KSQO='off'</command>.
-                   </para>
-                 </listitem>
-               </varlistentry>
-             </variablelist>
-           </listitem>
-         </varlistentry>
-       </variablelist>
+      enables this optimization.
      </para>
+    </listitem>
+   </varlistentry>
+   
+   <varlistentry>
+    <term>
+     Off
+    </term>
+    <listitem>
      <para>
-       It may be useful when joining big relations with
-       small ones. This algorithm is off by default.
-       It's not used by GEQO anyway.
+      disables this optimization.
      </para>
+    </listitem>
+   </varlistentry>
+   
+   <varlistentry>
+    <term>
+     DEFAULT
+    </term>
+    <listitem>
      <para>
-       The frontend may be initialized by setting the PGKSQO
-       environment variable.
-       <variablelist>
-         <varlistentry>
-           <term>
-             QUERY_LIMIT
-           </term>
-           <listitem>
-             <para>
-               Sets the number of rows returned by a query.
-             </para>
-             
-             <variablelist>
-               <varlistentry>
-                 <term>
-                   Value
-                 </term>
-                 <listitem>
-                   <para>
-                     Maximum number of rows to return for a query.  The default is to allow
-                     an unlimited number of rows.
-                   </para>
-                 </listitem>
-               </varlistentry>
-               <varlistentry>
-                 <term>
-                   <replaceable class="parameter">#</replaceable>
-                 </term>
-                 <listitem>
-                   <para>
-                     Sets the maximum number of rows returned by a
-                     query to <replaceable class="parameter">#</replaceable>.
-                   </para>
-                 </listitem>
-               </varlistentry>
-               <varlistentry>
-                 <term>
-                   DEFAULT
-                 </term>
-                 <listitem>
-                   <para>
-                     Sets the maximum number of rows returned by a query to be unlimited.
-                   </para>
-                 </listitem>
-               </varlistentry>
-             </variablelist>
-             <para>
-               By default, there is no limit to the number of rows
-               returned by a query.
-             </para>
-           </listitem>
-         </varlistentry>
-       </variablelist>
+      Equivalent to specifying <command>SET KSQO='off'</command>.
      </para>
-   </REFSECT2>
-   
-   <REFSECT2 ID="R2-SQL-SET-2">
-     <REFSECT2INFO>
-       <DATE>1998-09-24</DATE>
-     </REFSECT2INFO>
-     <TITLE>
-       Outputs
-     </TITLE>
-     <PARA>
-       
-       <VARIABLELIST>
-         <VARLISTENTRY>
-           <TERM>
-             <returnvalue>SET VARIABLE</returnvalue>
-           </TERM>
-           <LISTITEM>
-             <PARA>
-               Message returned if successfully.
-             </para>
-           </listitem>
-         </varlistentry>
-         
-         <VARLISTENTRY>
-           <TERM>
-             <returnvalue>WARN:  Bad value for <replaceable class="parameter">variable</replaceable> (<replaceable class="parameter">value</replaceable>)</returnvalue>
-           </TERM>
-           <LISTITEM>
-             <PARA>
-               If the command fails to set variable.
-             </para>
-           </listitem>
-         </varlistentry>
-         
-       </VARIABLELIST>
+    </listitem>
+   </varlistentry>
+       </variablelist>
+      </listitem>
+     </varlistentry>
+    </variablelist>
+   </para>
+   <para>
+    It may be useful when joining big relations with
+    small ones. This algorithm is off by default.
+    It's not used by GEQO anyway.
+   </para>
+   <para>
+    The frontend may be initialized by setting the PGKSQO
+    environment variable.
+    <variablelist>
+     <varlistentry>
+      <term>
+       QUERY_LIMIT
+      </term>
+      <listitem>
+       <para>
+   Sets the number of rows returned by a query.
+       </para>
+       
+       <variablelist>
+   <varlistentry>
+    <term>
+     Value
+    </term>
+    <listitem>
+     <para>
+      Maximum number of rows to return for a query.  The default is to allow
+      an unlimited number of rows.
      </para>
-   </REFSECT2>
-  </REFSYNOPSISDIV>
-  
-  <REFSECT1 ID="R1-SQL-SET-1">
-   <REFSECT1INFO>
-     <DATE>1998-09-24</DATE>
-   </REFSECT1INFO>
-   <TITLE>
-     Description
-   </TITLE>
-   <PARA>
-     <command>SET</command> will modify configuration parameters for variable during
-   a session.
-   </para>
-   <para>
-     Current values can be obtained using <command>SHOW</command>, and values
-     can be restored to the defaults using <command>RESET</command>.
-     Parameters and values are case-insensitive. Note that the value
-     field is always specified as a string, so is enclosed in
-     single-quotes.
-   </para>
-   <para>
-     <command>SET TIME ZONE</command> changes the session's
-     default time zone offset.
-     A SQL-session always begins with an initial default time zone
-     offset.
-     The <command>SET TIME ZONE</command> statement is used to change the default
-     time zone offset for the current SQL session.
-   </para>
-
-   <REFSECT2 ID="R2-SQL-SET-3">
-     <REFSECT2INFO>
-       <DATE>1998-09-24</DATE>
-     </REFSECT2INFO>
-     <TITLE>
-       Notes
-     </TITLE>
-     <PARA>
-       The <command>SET <replaceable class="parameter">variable</replaceable></command>
-       statement is a <productname>Postgres</productname> language extension.
+    </listitem>
+   </varlistentry>
+   <varlistentry>
+    <term>
+     <replaceable class="parameter">#</replaceable>
+    </term>
+    <listitem>
+     <para>
+      Sets the maximum number of rows returned by a
+      query to <replaceable class="parameter">#</replaceable>.
      </para>
+    </listitem>
+   </varlistentry>
+   <varlistentry>
+    <term>
+     DEFAULT
+    </term>
+    <listitem>
      <para>
-       Refer to <command>SHOW</command> and <command>RESET</command> to 
-       display or reset the current values.
+      Sets the maximum number of rows returned by a query to be unlimited.
      </para>
-   </REFSECT2>
-  </REFSECT1>
-
-  <REFSECT1 ID="R1-SQL-SET-2">
-   <TITLE>
-     Usage
-   </TITLE>
-   <PARA>
-   </PARA>
-   <ProgramListing>
-     --Set the style of date to ISO:
-     --
-     SET DATESTYLE TO 'ISO';
-   </programlisting>
-   <programlisting> 
-     --Enable GEQO for queries with 4 or more tables
-     --
-     SET GEQO ON=4;
-   </programlisting>
-   <programlisting> 
-     --Set GEQO to default:
-     --
-     SET GEQO = DEFAULT;
-   </programlisting>
-   <programlisting> 
-     --set the timezone for Berkeley, California:
-     SET TIME ZONE 'PST8PDT';
-     
-     SELECT CURRENT_TIMESTAMP AS today;
-     
-     today
-     ----------------------
-     1998-03-31 07:41:21-08
-   </programlisting>
-   <programlisting> 
-     --set the timezone for Italy:
-     SET TIME ZONE 'Europe/Rome';
-     
-     SELECT CURRENT_TIMESTAMP AS today;
-     
-     today
-     ----------------------
-     1998-03-31 17:41:31+02
-   </ProgramListing>
-
-  </REFSECT1>
+    </listitem>
+   </varlistentry>
+       </variablelist>
+       <para>
+   By default, there is no limit to the number of rows
+   returned by a query.
+       </para>
+      </listitem>
+     </varlistentry>
+    </variablelist>
+   </para>
+  </REFSECT2>
+  
+  <REFSECT2 ID="R2-SQL-SET-2">
+   <REFSECT2INFO>
+    <DATE>1998-09-24</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Outputs
+   </TITLE>
+   <PARA>
+    
+    <VARIABLELIST>
+     <VARLISTENTRY>
+      <TERM>
+       <returnvalue>SET VARIABLE</returnvalue>
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   Message returned if successfully.
+       </para>
+      </listitem>
+     </varlistentry>
+     
+     <VARLISTENTRY>
+      <TERM>
+       <returnvalue>WARN:  Bad value for <replaceable class="parameter">variable</replaceable> (<replaceable class="parameter">value</replaceable>)</returnvalue>
+      </TERM>
+      <LISTITEM>
+       <PARA>
+   If the command fails to set variable.
+       </para>
+      </listitem>
+     </varlistentry>
+     
+    </VARIABLELIST>
+   </para>
+  </REFSECT2>
+ </REFSYNOPSISDIV>
+ <REFSECT1 ID="R1-SQL-SET-1">
+  <REFSECT1INFO>
+   <DATE>1998-09-24</DATE>
+  </REFSECT1INFO>
+  <TITLE>
+   Description
+  </TITLE>
+  <PARA>
+   <command>SET</command> will modify configuration parameters for variable during
+   a session.
+  </para>
+  <para>
+   Current values can be obtained using <command>SHOW</command>, and values
+   can be restored to the defaults using <command>RESET</command>.
+   Parameters and values are case-insensitive. Note that the value
+   field is always specified as a string, so is enclosed in
+   single-quotes.
+  </para>
+  <para>
+   <command>SET TIME ZONE</command> changes the session's
+   default time zone offset.
+   A SQL-session always begins with an initial default time zone
+   offset.
+   The <command>SET TIME ZONE</command> statement is used to change the default
+   time zone offset for the current SQL session.
+  </para>
+  
+  <REFSECT2 ID="R2-SQL-SET-3">
+   <REFSECT2INFO>
+    <DATE>1998-09-24</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    Notes
+   </TITLE>
+   <PARA>
+    The <command>SET <replaceable class="parameter">variable</replaceable></command>
+    statement is a <productname>Postgres</productname> language extension.
+   </para>
+   <para>
+    Refer to <command>SHOW</command> and <command>RESET</command> to 
+    display or reset the current values.
+   </para>
+  </REFSECT2>
+ </REFSECT1>
+ <REFSECT1 ID="R1-SQL-SET-2">
+  <TITLE>
+   Usage
+  </TITLE>
+  <PARA>
+  </PARA>
+  <ProgramListing>
+   --Set the style of date to ISO:
+   --
+   SET DATESTYLE TO 'ISO';
+  </programlisting>
+  <programlisting> 
+   --Enable GEQO for queries with 4 or more tables
+   --
+   SET GEQO ON=4;
+  </programlisting>
+  <programlisting> 
+   --Set GEQO to default:
+   --
+   SET GEQO = DEFAULT;
+  </programlisting>
+  <programlisting> 
+   --set the timezone for Berkeley, California:
+   SET TIME ZONE 'PST8PDT';
+   
+   SELECT CURRENT_TIMESTAMP AS today;
+   
+   today
+   ----------------------
+   1998-03-31 07:41:21-08
+  </programlisting>
+  <programlisting> 
+   --set the timezone for Italy:
+   SET TIME ZONE 'Europe/Rome';
+   
+   SELECT CURRENT_TIMESTAMP AS today;
+   
+   today
+   ----------------------
+   1998-03-31 17:41:31+02
+  </ProgramListing>
+  
+ </REFSECT1>
 
 <REFSECT1 ID="R1-SQL-SET-3">
-   <TITLE>
-     Compatibility
-   </TITLE>
-   <PARA>
-   </PARA>
-   
-   <REFSECT2 ID="R2-SQL-SET-4">
-     <REFSECT2INFO>
-       <DATE>1998-09-24</DATE>
-     </REFSECT2INFO>
-     <TITLE>
-       SQL92
-     </TITLE>
-     <PARA>
-       There is no
-       <command>SET <replaceable class="parameter">variable</replaceable></command>
-       in <acronym>SQL92</acronym>.
-       
-       The <acronym>SQL92</acronym> syntax for <command>SET TIME ZONE</command>
-       is slightly different,
-       allowing only a single integer value for time zone specification:
-       
-       <programlisting>
-         SET TIME ZONE { interval_value_expression | LOCAL }
-       </programlisting>
-     </para>
-   </refsect2>
 </refsect1>
+ <REFSECT1 ID="R1-SQL-SET-3">
+  <TITLE>
+   Compatibility
+  </TITLE>
+  <PARA>
+  </PARA>
+  
+  <REFSECT2 ID="R2-SQL-SET-4">
+   <REFSECT2INFO>
+    <DATE>1998-09-24</DATE>
+   </REFSECT2INFO>
+   <TITLE>
+    SQL92
+   </TITLE>
+   <PARA>
+    There is no
+    <command>SET <replaceable class="parameter">variable</replaceable></command>
+    in <acronym>SQL92</acronym>.
+    
+    The <acronym>SQL92</acronym> syntax for <command>SET TIME ZONE</command>
+    is slightly different,
+    allowing only a single integer value for time zone specification:
+    
+    <programlisting>
+     SET TIME ZONE { interval_value_expression | LOCAL }
+    </programlisting>
+   </para>
+  </refsect2>
+ </refsect1>
 </REFENTRY>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:nil
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../reference.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:"/usr/lib/sgml/CATALOG"
+sgml-local-ecat-files:nil
+End:
+-->