Home Explore Blog CI



postgresql

doc/src/sgml/ref/alter_user.sgml
aa1193f63a9fbea57591e6c0a4e1e30a509babaeb8944fda0000000300000bbf
<!--
doc/src/sgml/ref/alter_user.sgml
PostgreSQL documentation
-->

<refentry id="sql-alteruser">
 <indexterm zone="sql-alteruser">
  <primary>ALTER USER</primary>
 </indexterm>

 <refmeta>
  <refentrytitle>ALTER USER</refentrytitle>
  <manvolnum>7</manvolnum>
  <refmiscinfo>SQL - Language Statements</refmiscinfo>
 </refmeta>

 <refnamediv>
  <refname>ALTER USER</refname>
  <refpurpose>change a database role</refpurpose>
 </refnamediv>

 <refsynopsisdiv>
<synopsis>
ALTER USER <replaceable class="parameter">role_specification</replaceable> [ WITH ] <replaceable class="parameter">option</replaceable> [ ... ]

<phrase>where <replaceable class="parameter">option</replaceable> can be:</phrase>

      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
    | INHERIT | NOINHERIT
    | LOGIN | NOLOGIN
    | REPLICATION | NOREPLICATION
    | BYPASSRLS | NOBYPASSRLS
    | CONNECTION LIMIT <replaceable class="parameter">connlimit</replaceable>
    | [ ENCRYPTED ] PASSWORD '<replaceable class="parameter">password</replaceable>' | PASSWORD NULL
    | VALID UNTIL '<replaceable class="parameter">timestamp</replaceable>'

ALTER USER <replaceable class="parameter">name</replaceable> RENAME TO <replaceable>new_name</replaceable>

ALTER USER { <replaceable class="parameter">role_specification</replaceable> | ALL } [ IN DATABASE <replaceable class="parameter">database_name</replaceable> ] SET <replaceable>configuration_parameter</replaceable> { TO | = } { <replaceable>value</replaceable> | DEFAULT }
ALTER USER { <replaceable class="parameter">role_specification</replaceable> | ALL } [ IN DATABASE <replaceable class="parameter">database_name</replaceable> ] SET <replaceable>configuration_parameter</replaceable> FROM CURRENT
ALTER USER { <replaceable class="parameter">role_specification</replaceable> | ALL } [ IN DATABASE <replaceable class="parameter">database_name</replaceable> ] RESET <replaceable>configuration_parameter</replaceable>
ALTER USER { <replaceable class="parameter">role_specification</replaceable> | ALL } [ IN DATABASE <replaceable class="parameter">database_name</replaceable> ] RESET ALL

<phrase>where <replaceable class="parameter">role_specification</replaceable> can be:</phrase>

    <replaceable class="parameter">role_name</replaceable>
  | CURRENT_ROLE
  | CURRENT_USER
  | SESSION_USER
</synopsis>
 </refsynopsisdiv>

 <refsect1>
  <title>Description</title>

  <para>
   <command>ALTER USER</command> is now an alias for
   <link linkend="sql-alterrole"><command>ALTER ROLE</command></link>.
  </para>
 </refsect1>

 <refsect1>
  <title>Compatibility</title>

  <para>
   The <command>ALTER USER</command> statement is a
   <productname>PostgreSQL</productname> extension.  The SQL standard
   leaves the definition of users to the implementation.
  </para>
 </refsect1>

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

  <simplelist type="inline">
   <member><xref linkend="sql-alterrole"/></member>
  </simplelist>
 </refsect1>
</refentry>

Chunks
6836c865 (1st chunk of `doc/src/sgml/ref/alter_user.sgml`)
Title: ALTER USER Command in PostgreSQL
Summary
This documentation describes the ALTER USER command in PostgreSQL, which is used to modify database roles. It outlines the syntax for altering user attributes like superuser status, database creation privileges, role creation privileges, login permissions, replication status, connection limits, passwords, and validation periods. It also covers renaming users and setting or resetting configuration parameters. ALTER USER is now an alias for ALTER ROLE. The ALTER USER statement is a PostgreSQL extension.