<!--
$Header: /cvsroot/pgsql/doc/src/sgml/ref/show.sgml,v 1.31 2003/08/31 17:32:24 petere Exp $
PostgreSQL documentation
-->

<refentry id="SQL-SHOW">
 <refmeta>
  <refentrytitle id="SQL-SHOW-TITLE">SHOW</refentrytitle>
  <refmiscinfo>SQL - Language Statements</refmiscinfo>
 </refmeta>

 <refnamediv>
  <refname>SHOW</refname>
  <refpurpose>show the value of a run-time parameter</refpurpose>
 </refnamediv>

 <indexterm zone="sql-show">
  <primary>SHOW</primary>
 </indexterm>

 <refsynopsisdiv>
<synopsis>
SHOW <replaceable class="PARAMETER">name</replaceable>
</synopsis>
<synopsis>
SHOW ALL
</synopsis>
 </refsynopsisdiv>

 <refsect1>
  <title>Description</title>

  <para>
   <command>SHOW</command> will display the current setting of
   run-time parameters. These variables can be set using the
   <command>SET</command> statement, by editing the
   <filename>postgresql.conf</filename> configuration file, through
   the <envar>PGOPTIONS</envar> environmental variable (when using
   <application>libpq</> or a <application>libpq</>-based
   application), or through command-line flags when starting the
   <command>postmaster</command>.  See <xref
   linkend="runtime-config"> for details.
  </para>
 </refsect1>

 <refsect1>
  <title>Parameters</title>

  <variablelist>
   <varlistentry>
    <term><replaceable class="PARAMETER">name</replaceable></term>
    <listitem>
     <para>
      The name of a run-time parameter.  Available parameters are
      documented in <xref linkend="runtime-config"> and on the <xref
      linkend="SQL-SET" endterm="SQL-SET-title"> reference page.  In
      addition, there are a few parameters that can be shown but not
      set:

      <variablelist>
       <varlistentry>
        <term><literal>SERVER_VERSION</literal></term>
        <listitem>
         <para>
          Shows the server's version number.
         </para>
        </listitem>
       </varlistentry>

       <varlistentry>
        <term><literal>SERVER_ENCODING</literal></term>
        <listitem>
         <para>
          Shows the server-side character set encoding.  At present,
          this parameter can be shown but not set, because the
          encoding is determined at database creation time.
         </para>
        </listitem>
       </varlistentry>

       <varlistentry>
        <term><literal>LC_COLLATE</literal></term>
        <listitem>
         <para>
          Shows the database's locale setting for collation (text
          ordering).  At present, this parameter can be shown but not
          set, because the setting is determined at
          <command>initdb</> time.
         </para>
        </listitem>
       </varlistentry>

       <varlistentry>
        <term><literal>LC_CTYPE</literal></term>
        <listitem>
         <para>
          Shows the database's locale setting for character
          classification.  At present, this parameter can be shown but
          not set, because the setting is determined at
          <command>initdb</> time.
         </para>
        </listitem>
       </varlistentry>

       <varlistentry>
        <term><literal>IS_SUPERUSER</literal></term>
        <listitem>
         <para>
          True if the current session authorization identifier has
	  superuser privileges.
         </para>
        </listitem>
       </varlistentry>
      </variablelist>
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>ALL</literal></term>
    <listitem>
     <para>
      Show the values of all configurations parameters.
     </para>
    </listitem>
   </varlistentry>
  </variablelist>
 </refsect1>

 <refsect1>
  <title>Diagnostics</title>

  <variablelist>
   <varlistentry>
    <term><computeroutput>ERROR: Option '<replaceable>name</replaceable>' is not recognized</computeroutput></term>
    <listitem>
     <para>
      Message returned if <replaceable>name</replaceable> does not
      stand for a known parameter.
     </para>
    </listitem>
   </varlistentry>
  </variablelist>
 </refsect1>

 <refsect1>
  <title>Notes</title>

  <para>
   The function <function>current_setting</function> produces
   equivalent output. See <xref linkend="functions-misc">.
  </para>
 </refsect1>

 <refsect1>
  <title>Examples</title>

  <para>
   Show the current setting of the parameter <varname>DateStyle</varname>:

<programlisting>
SHOW DateStyle;
 DateStyle
-----------
 ISO, MDY
(1 row)
</programlisting>
  </para>

  <para>
   Show the current setting of the parameter <varname>geqo</varname>:
<programlisting>
SHOW geqo;
 geqo
------
 on
(1 row)
</programlisting>
  </para>

  <para>
   Show all settings:
<programlisting>
SHOW ALL;
             name              |                setting
-------------------------------+---------------------------------------
 australian_timezones          | off
 authentication_timeout        | 60
 checkpoint_segments           | 3
    .
    .
    .
 wal_debug                     | 0
 wal_sync_method               | fdatasync
(94 rows)
</programlisting>
  </para>
 </refsect1>

 <refsect1>
  <title>Compatibility</title>

  <para>
   The <command>SHOW</command> command is a
   <productname>PostgreSQL</productname> extension.
  </para>
 </refsect1>

 <refsect1>
  <title>See Also</title>

  <simplelist type="inline">
   <member><xref linkend="SQL-SET" endterm="SQL-SET-title"></member>
  </simplelist>
 </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:
-->
