manpagez: man pages & more
man alter_database(l)
Home | html | info | man
ALTER DATABASE()                 SQL Commands                 ALTER DATABASE()




NAME

       ALTER DATABASE - change a database



SYNOPSIS

       ALTER DATABASE name [ [ WITH ] option [ ... ] ]

       where option can be:

           CONNECTION LIMIT connlimit

       ALTER DATABASE name RENAME TO newname

       ALTER DATABASE name OWNER TO new_owner

       ALTER DATABASE name SET configuration_parameter { TO | = } { value | DEFAULT }
       ALTER DATABASE name SET configuration_parameter FROM CURRENT
       ALTER DATABASE name RESET configuration_parameter
       ALTER DATABASE name RESET ALL



DESCRIPTION

       ALTER DATABASE changes the attributes of a database.

       The  first  form  changes certain per-database settings. (See below for
       details.) Only the database owner or a superuser can change these  set-
       tings.

       The  second  form  changes  the name of the database. Only the database
       owner or a superuser can rename a database; non-superuser  owners  must
       also  have  the  CREATEDB  privilege.  The  current  database cannot be
       renamed. (Connect to a different database if you need to do that.)

       The third form changes the owner of the database.  To alter the  owner,
       you  must  own  the database and also be a direct or indirect member of
       the new owning role, and you must have the CREATEDB  privilege.   (Note
       that superusers have all these privileges automatically.)

       The  remaining forms change the session default for a run-time configu-
       ration variable for a PostgreSQL database. Whenever a  new  session  is
       subsequently  started in that database, the specified value becomes the
       session default value.  The database-specific default  overrides  what-
       ever  setting  is  present in postgresql.conf or has been received from
       the postgres 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.


PARAMETERS

       name   The name of the database whose attributes are to be altered.

       connlimit
              How many concurrent connections can be made to this database. -1
              means no limit.

       newname
              The new name of the database.

       new_owner
              The new owner of the database.

       configuration_parameter

       value  Set this database's session default for the specified configura-
              tion parameter to the given  value.  If  value  is  DEFAULT  or,
              equivalently,  RESET  is  used, the database-specific setting is
              removed, so the system-wide default setting will be inherited in
              new  sessions. Use RESET ALL to clear all database-specific set-
              tings.  SET FROM CURRENT saves the session's  current  value  of
              the parameter as the database-specific value.

              See  SET  [set(l)] and in the documentation for more information
              about allowed parameter names and values.


NOTES

       It is also possible to tie a session default to a specific role  rather
       than to a database; see ALTER ROLE [alter_role(l)].  Role-specific set-
       tings override database-specific ones if there is a conflict.


EXAMPLES

       To disable index scans by default in the database test:

       ALTER DATABASE test SET enable_indexscan TO off;



COMPATIBILITY

       The ALTER DATABASE statement is a PostgreSQL extension.


SEE ALSO

       CREATE DATABASE [create_database(l)], DROP DATABASE [drop_database(l)],
       SET [set(l)]



SQL - Language Statements         2008-09-19                  ALTER DATABASE()

postgresql 8.3.4 - Generated Thu Oct 2 07:47:48 CDT 2008
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.