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

<refentry id="APP-DROPDB">
 <refmeta>
  <refentrytitle id="APP-DROPDB-TITLE"><application>dropdb</application></refentrytitle>
  <manvolnum>1</manvolnum>
  <refmiscinfo>Application</refmiscinfo>
 </refmeta>

 <refnamediv>
  <refname>dropdb</refname>
  <refpurpose>remove a <productname>PostgreSQL</productname> database</refpurpose>
 </refnamediv>

 <indexterm zone="app-dropdb">
  <primary>dropdb</primary>
 </indexterm>

 <refsynopsisdiv>
  <cmdsynopsis>
   <command>dropdb</command>
   <arg rep="repeat"><replaceable>option</replaceable></arg>
   <arg choice="plain"><replaceable>dbname</replaceable></arg>
  </cmdsynopsis>
 </refsynopsisdiv>


 <refsect1>
  <title>Description</title>

  <para>
   <application>dropdb</application> destroys an existing
   <productname>PostgreSQL</productname> database.
   The user who executes this command must be a database
   superuser or the owner of the database.
  </para>

  <para>
   <application>dropdb</application> is a wrapper around the
   <acronym>SQL</acronym> command <xref linkend="SQL-DROPDATABASE"
   endterm="SQL-DROPDATABASE-title">.  The database server must be 
   running on the targeted host. There is nothing special
   about dropping databases via this or other methods. Also, any
   default settings and environment variables used by the
   <application>libpq</application> front-end library will apply.
  </para>
 </refsect1>


 <refsect1>
  <title>Options</title>

  <para>
   <application>dropdb</> accepts the following command-line arguments:

    <variablelist>
     <varlistentry>
      <term><replaceable class="parameter">dbname</replaceable></term>
      <listitem>
       <para>
	Specifies the name of the database to be removed.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term><option>-e</></term>
      <term><option>--echo</></term>
      <listitem>
       <para>
        Echo the commands that <application>dropdb</application> generates
	and sends to the server.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term><option>-i</></term>
      <term><option>--interactive</></term>
      <listitem>
       <para>
       Issues a verification prompt before doing anything destructive.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term><option>-q</></term>
      <term><option>--quiet</></term>
      <listitem>
       <para>
        Do not display a response.
       </para>
      </listitem>
     </varlistentry>
    </variablelist>
  </para>

  <para>
   <application>createdb</application> also accepts the following
   command-line arguments for connection parameters:

   <variablelist>
     <varlistentry>
      <term><option>-h <replaceable class="parameter">host</replaceable></></term>
      <term><option>--host <replaceable class="parameter">host</replaceable></></term>
      <listitem>
       <para>
	Specifies the host name of the machine on which the 
	server
	is running.  If the value begins with a slash, it is used 
	as the directory for the Unix domain socket.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term><option>-p <replaceable class="parameter">port</replaceable></></term>
      <term><option>--port <replaceable class="parameter">port</replaceable></></term>
      <listitem>
       <para>
	Specifies the TCP port or local Unix domain socket file 
	extension on which the server
	is listening for connections.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term><option>-U <replaceable class="parameter">username</replaceable></></term>
      <term><option>--username <replaceable class="parameter">username</replaceable></></term>
      <listitem>
       <para>
        User name to connect as
       </para>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term><option>-W</></term>
      <term><option>--password</></term>
      <listitem>
       <para>
        Force password prompt.
       </para>
      </listitem>
     </varlistentry>
   </variablelist>
  </para>
 </refsect1>


 <refsect1>
   <title>Diagnostics</title>

    <variablelist>
     <varlistentry>
      <term><computeroutput>DROP DATABASE</computeroutput></term>
      <listitem>
       <para>The database was successfully removed.</para>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term><computeroutput>dropdb: Database removal failed.</computeroutput></term>
      <listitem>
       <para>Something didn't work out.</para>
      </listitem>
     </varlistentry>
    </variablelist>

   <para>
    If there is an error condition, the backend error message will be displayed.
    See <xref linkend="SQL-DROPDATABASE" endterm="SQL-DROPDATABASE-title">
    for possibilities.
   </para>
 </refsect1>


 <refsect1>
  <title>Environment</title>

  <variablelist>
   <varlistentry>
    <term><envar>PGHOST</envar></term>
    <term><envar>PGPORT</envar></term>
    <term><envar>PGUSER</envar></term>

    <listitem>
     <para>
      Default connection parameters
     </para>
    </listitem>
   </varlistentry>
  </variablelist>
 </refsect1>


 <refsect1 id="R1-APP-DROPDB-2">
  <title>Examples</title>

   <para>
    To destroy the database <literal>demo</literal> on the default
    database server:
<screen>
<prompt>$ </prompt><userinput>dropdb demo</userinput>
<computeroutput>DROP DATABASE</computeroutput>
</screen>
   </para>

   <para>
    To destroy the database <literal>demo</literal> using the
    server on host <literal>eden</literal>, port 5000, with verification and a peek
    at the underlying command:
<screen>
<prompt>$ </prompt><userinput>dropdb -p 5000 -h eden -i -e demo</userinput>
<computeroutput>Database "demo" will be permanently deleted.
Are you sure? (y/n) </computeroutput><userinput>y</userinput>
<computeroutput>DROP DATABASE "demo"
DROP DATABASE</computeroutput>
</screen>
   </para>
 </refsect1>


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

  <simplelist type="inline">
   <member><xref linkend="app-createdb"></member>
   <member><xref linkend="sql-dropdatabase" endterm="sql-dropdatabase-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:
-->
