1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>ALTER GROUP</title><link rel="stylesheet" type="text/css" href="stylesheet.css" /><link rev="made" href="pgsql-docs@lists.postgresql.org" /><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /><link rel="prev" href="sql-alterfunction.html" title="ALTER FUNCTION" /><link rel="next" href="sql-alterindex.html" title="ALTER INDEX" /></head><body id="docContent" class="container-fluid col-10"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="5" align="center">ALTER GROUP</th></tr><tr><td width="10%" align="left"><a accesskey="p" href="sql-alterfunction.html" title="ALTER FUNCTION">Prev</a> </td><td width="10%" align="left"><a accesskey="u" href="sql-commands.html" title="SQL Commands">Up</a></td><th width="60%" align="center">SQL Commands</th><td width="10%" align="right"><a accesskey="h" href="index.html" title="PostgreSQL 18.0 Documentation">Home</a></td><td width="10%" align="right"> <a accesskey="n" href="sql-alterindex.html" title="ALTER INDEX">Next</a></td></tr></table><hr /></div><div class="refentry" id="SQL-ALTERGROUP"><div class="titlepage"></div><a id="id-1.9.3.15.1" class="indexterm"></a><div class="refnamediv"><h2><span class="refentrytitle">ALTER GROUP</span></h2><p>ALTER GROUP — change role name or membership</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">
3 ALTER GROUP <em class="replaceable"><code>role_specification</code></em> ADD USER <em class="replaceable"><code>user_name</code></em> [, ... ]
4 ALTER GROUP <em class="replaceable"><code>role_specification</code></em> DROP USER <em class="replaceable"><code>user_name</code></em> [, ... ]
6 <span class="phrase">where <em class="replaceable"><code>role_specification</code></em> can be:</span>
8 <em class="replaceable"><code>role_name</code></em>
13 ALTER GROUP <em class="replaceable"><code>group_name</code></em> RENAME TO <em class="replaceable"><code>new_name</code></em>
14 </pre></div><div class="refsect1" id="id-1.9.3.15.5"><h2>Description</h2><p>
15 <code class="command">ALTER GROUP</code> changes the attributes of a user group.
16 This is an obsolete command, though still accepted for backwards
17 compatibility, because groups (and users too) have been superseded by the
18 more general concept of roles.
20 The first two variants add users to a group or remove them from a group.
21 (Any role can play the part of either a <span class="quote">“<span class="quote">user</span>”</span> or a
22 <span class="quote">“<span class="quote">group</span>”</span> for this purpose.) These variants are effectively
23 equivalent to granting or revoking membership in the role named as the
24 <span class="quote">“<span class="quote">group</span>”</span>; so the preferred way to do this is to use
25 <a class="link" href="sql-grant.html" title="GRANT"><code class="command">GRANT</code></a> or
26 <a class="link" href="sql-revoke.html" title="REVOKE"><code class="command">REVOKE</code></a>. Note that
27 <code class="command">GRANT</code> and <code class="command">REVOKE</code> have additional
28 options which are not available with this command, such as the ability
29 to grant and revoke <code class="literal">ADMIN OPTION</code>, and the ability to
32 The third variant changes the name of the group. This is exactly
33 equivalent to renaming the role with
34 <a class="link" href="sql-alterrole.html" title="ALTER ROLE"><code class="command">ALTER ROLE</code></a>.
35 </p></div><div class="refsect1" id="id-1.9.3.15.6"><h2>Parameters</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="replaceable"><code>group_name</code></em></span></dt><dd><p>
36 The name of the group (role) to modify.
37 </p></dd><dt><span class="term"><em class="replaceable"><code>user_name</code></em></span></dt><dd><p>
38 Users (roles) that are to be added to or removed from the group.
39 The users must already exist; <code class="command">ALTER GROUP</code> does not
41 </p></dd><dt><span class="term"><em class="replaceable"><code>new_name</code></em></span></dt><dd><p>
42 The new name of the group.
43 </p></dd></dl></div></div><div class="refsect1" id="id-1.9.3.15.7"><h2>Examples</h2><p>
46 </p><pre class="programlisting">
47 ALTER GROUP staff ADD USER karl, john;
50 Remove a user from a group:
52 </p><pre class="programlisting">
53 ALTER GROUP workers DROP USER beth;
54 </pre></div><div class="refsect1" id="id-1.9.3.15.8"><h2>Compatibility</h2><p>
55 There is no <code class="command">ALTER GROUP</code> statement in the SQL
57 </p></div><div class="refsect1" id="id-1.9.3.15.9"><h2>See Also</h2><span class="simplelist"><a class="xref" href="sql-grant.html" title="GRANT"><span class="refentrytitle">GRANT</span></a>, <a class="xref" href="sql-revoke.html" title="REVOKE"><span class="refentrytitle">REVOKE</span></a>, <a class="xref" href="sql-alterrole.html" title="ALTER ROLE"><span class="refentrytitle">ALTER ROLE</span></a></span></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="sql-alterfunction.html" title="ALTER FUNCTION">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="sql-commands.html" title="SQL Commands">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="sql-alterindex.html" title="ALTER INDEX">Next</a></td></tr><tr><td width="40%" align="left" valign="top">ALTER FUNCTION </td><td width="20%" align="center"><a accesskey="h" href="index.html" title="PostgreSQL 18.0 Documentation">Home</a></td><td width="40%" align="right" valign="top"> ALTER INDEX</td></tr></table></div></body></html>