diff options
Diffstat (limited to 'doc/src/sgml/ref/drop_database.sgml')
-rw-r--r-- | doc/src/sgml/ref/drop_database.sgml | 126 |
1 files changed, 126 insertions, 0 deletions
diff --git a/doc/src/sgml/ref/drop_database.sgml b/doc/src/sgml/ref/drop_database.sgml new file mode 100644 index 0000000..ff01450 --- /dev/null +++ b/doc/src/sgml/ref/drop_database.sgml @@ -0,0 +1,126 @@ +<!-- +doc/src/sgml/ref/drop_database.sgml +PostgreSQL documentation +--> + +<refentry id="sql-dropdatabase"> + <indexterm zone="sql-dropdatabase"> + <primary>DROP DATABASE</primary> + </indexterm> + + <refmeta> + <refentrytitle>DROP DATABASE</refentrytitle> + <manvolnum>7</manvolnum> + <refmiscinfo>SQL - Language Statements</refmiscinfo> + </refmeta> + + <refnamediv> + <refname>DROP DATABASE</refname> + <refpurpose>remove a database</refpurpose> + </refnamediv> + + <refsynopsisdiv> +<synopsis> +DROP DATABASE [ IF EXISTS ] <replaceable class="parameter">name</replaceable> [ [ WITH ] ( <replaceable class="parameter">option</replaceable> [, ...] ) ] + +<phrase>where <replaceable class="parameter">option</replaceable> can be:</phrase> + + FORCE +</synopsis> + </refsynopsisdiv> + + <refsect1> + <title>Description</title> + + <para> + <command>DROP DATABASE</command> drops a database. It removes the + catalog entries for the database and deletes the directory + containing the data. It can only be executed by the database owner. + It cannot be executed while you are connected to the target database. + (Connect to <literal>postgres</literal> or any other database to issue this + command.) + Also, if anyone else is connected to the target database, this command will + fail unless you use the <literal>FORCE</literal> option described below. + </para> + + <para> + <command>DROP DATABASE</command> cannot be undone. Use it with care! + </para> + </refsect1> + + <refsect1> + <title>Parameters</title> + + <variablelist> + <varlistentry> + <term><literal>IF EXISTS</literal></term> + <listitem> + <para> + Do not throw an error if the database does not exist. A notice is issued + in this case. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable class="parameter">name</replaceable></term> + <listitem> + <para> + The name of the database to remove. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><literal>FORCE</literal></term> + <listitem> + <para> + Attempt to terminate all existing connections to the target database. + It doesn't terminate if prepared transactions, active logical replication + slots or subscriptions are present in the target database. + </para> + <para> + This will fail if the current user has no permissions to terminate other + connections. Required permissions are the same as with + <literal>pg_terminate_backend</literal>, described in + <xref linkend="functions-admin-signal"/>. This will also fail if we + are not able to terminate connections. + </para> + </listitem> + </varlistentry> + + </variablelist> + </refsect1> + + <refsect1> + <title>Notes</title> + + <para> + <command>DROP DATABASE</command> cannot be executed inside a transaction + block. + </para> + + <para> + This command cannot be executed while connected to the target + database. Thus, it might be more convenient to use the program + <xref linkend="app-dropdb"/> instead, + which is a wrapper around this command. + </para> + </refsect1> + + <refsect1> + <title>Compatibility</title> + + <para> + There is no <command>DROP DATABASE</command> statement in the SQL standard. + </para> + </refsect1> + + <refsect1> + <title>See Also</title> + + <simplelist type="inline"> + <member><xref linkend="sql-createdatabase"/></member> + </simplelist> + </refsect1> +</refentry> |