| <!-- |
| $PostgreSQL: pgsql/doc/src/sgml/ref/alter_database.sgml,v 1.19 2006/09/16 00:30:16 momjian Exp $ |
| PostgreSQL documentation |
| --> |
| |
| <refentry id="SQL-ALTERDATABASE"> |
| <refmeta> |
| <refentrytitle id="sql-alterdatabase-title">ALTER DATABASE</refentrytitle> |
| <refmiscinfo>SQL - Language Statements</refmiscinfo> |
| </refmeta> |
| |
| <refnamediv> |
| <refname>ALTER DATABASE</refname> |
| <refpurpose>change a database</refpurpose> |
| </refnamediv> |
| |
| <indexterm zone="sql-alterdatabase"> |
| <primary>ALTER DATABASE</primary> |
| </indexterm> |
| |
| <refsynopsisdiv> |
| <synopsis> |
| ALTER DATABASE <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replaceable class="PARAMETER">option</replaceable> [ ... ] ] |
| |
| where <replaceable class="PARAMETER">option</replaceable> can be: |
| |
| CONNECTION LIMIT <replaceable class="PARAMETER">connlimit</replaceable> |
| |
| ALTER DATABASE <replaceable class="PARAMETER">name</replaceable> SET <replaceable>parameter</replaceable> { TO | = } { <replaceable>value</replaceable> | DEFAULT } |
| ALTER DATABASE <replaceable class="PARAMETER">name</replaceable> RESET <replaceable>parameter</replaceable> |
| </synopsis> |
| </refsynopsisdiv> |
| |
| <refsect1> |
| <title>Description</title> |
| |
| <para> |
| <command>ALTER DATABASE</command> changes the attributes |
| of a database. |
| </para> |
| |
| <para> |
| The first form changes certain per-database settings. (See below for |
| details.) Only the database owner or a superuser can change these settings. |
| </para> |
| |
| <para> |
| The second and third forms change the session default for a run-time |
| configuration variable for a <productname>PostgreSQL</productname> |
| database. Whenever a new session is subsequently started in that |
| database, the specified value becomes the session default value. |
| The database-specific default overrides whatever setting is present |
| in <filename>postgresql.conf</> or has been received from the |
| <command>postgres</command> command line. Only the database |
| owner or a superuser can change the session defaults for a |
| database. Certain variables cannot be set this way, or can only be |
| set by a superuser. |
| </para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Parameters</title> |
| |
| <variablelist> |
| <varlistentry> |
| <term><replaceable class="PARAMETER">name</replaceable></term> |
| <listitem> |
| <para> |
| The name of the database whose attributes are to be altered. |
| </para> |
| </listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><replaceable class="parameter">connlimit</replaceable></term> |
| <listitem> |
| <para> |
| How many concurrent connections can be made |
| to this database. -1 means no limit. |
| </para> |
| </listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><replaceable>parameter</replaceable></term> |
| <term><replaceable>value</replaceable></term> |
| <listitem> |
| <para> |
| Set this database's session default for the specified configuration |
| parameter to the given value. If |
| <replaceable>value</replaceable> is <literal>DEFAULT</literal> |
| or, equivalently, <literal>RESET</literal> is used, the |
| database-specific setting is removed, so the system-wide default |
| setting will be inherited in new sessions. Use <literal>RESET |
| ALL</literal> to clear all database-specific settings. |
| </para> |
| |
| <para> |
| See <xref linkend="sql-set" endterm="sql-set-title"> and <xref linkend="runtime-config"> |
| for more information about allowed parameter names |
| and values. |
| </para> |
| </listitem> |
| </varlistentry> |
| </refsect1> |
| |
| <refsect1> |
| <title>Notes</title> |
| |
| <para> |
| It is also possible to tie a session default to a specific user |
| rather than to a database; see |
| <xref linkend="sql-alteruser" endterm="sql-alteruser-title">. |
| User-specific settings override database-specific |
| ones if there is a conflict. |
| </para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Examples</title> |
| |
| <para> |
| To disable index scans by default in the database |
| <literal>test</literal>: |
| |
| <programlisting> |
| ALTER DATABASE test SET enable_indexscan TO off; |
| </programlisting> |
| </para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Compatibility</title> |
| |
| <para> |
| The <command>ALTER DATABASE</command> statement is a |
| <productname>PostgreSQL</productname> extension. |
| </para> |
| </refsect1> |
| |
| <refsect1> |
| <title>See Also</title> |
| |
| <simplelist type="inline"> |
| <member><xref linkend="sql-createdatabase" endterm="sql-createdatabase-title"></member> |
| <member><xref linkend="sql-dropdatabase" endterm="sql-dropdatabase-title"></member> |
| <member><xref linkend="sql-set" endterm="sql-set-title"></member> |
| </simplelist> |
| </refsect1> |
| </refentry> |