<!--
$Header: /cvsroot/pgsql/doc/src/sgml/ref/create_group.sgml,v 1.12 2003/08/31 17:32:22 petere Exp $
PostgreSQL documentation
-->

<refentry id="SQL-CREATEGROUP">
 <refmeta>
  <refentrytitle id="sql-creategroup-title">CREATE GROUP</refentrytitle>
  <refmiscinfo>SQL - Language Statements</refmiscinfo>
 </refmeta>

 <refnamediv>
  <refname>CREATE GROUP</refname>
  <refpurpose>define a new user group</refpurpose>
 </refnamediv>

 <indexterm zone="sql-creategroup">
  <primary>CREATE GROUP</primary>
 </indexterm>

 <refsynopsisdiv>
<synopsis>
CREATE GROUP <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replaceable class="PARAMETER">option</replaceable> [ ... ] ]

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

     SYSID <replaceable class="PARAMETER">gid</replaceable>
   | USER  <replaceable class="PARAMETER">username</replaceable> [, ...]
</synopsis>
 </refsynopsisdiv>

 <refsect1>
  <title>Description</title>

  <para>
   <command>CREATE GROUP</command> will create a new group in the
   database cluster.  You must be a database
   superuser to use this command.
  </para>

  <para>
   Use <xref linkend="SQL-ALTERGROUP" endterm="SQL-ALTERGROUP-title">
   to change a group's membership, and <xref linkend="SQL-DROPGROUP"
   endterm="SQL-DROPGROUP-title"> to remove a group.
  </para>  
 </refsect1> 
  
 <refsect1>
  <title>Parameters</title>

    <variablelist>
     <varlistentry>
      <term><replaceable class="parameter">name</replaceable></term>
      <listitem>
       <para>
	The name of the group.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term><replaceable class="parameter">gid</replaceable></term>
      <listitem>
       <para>
        The <literal>SYSID</literal> clause can be used to choose
        the <productname>PostgreSQL</productname> group ID of the new
        group. It is not necessary to do so, however.
       </para>
       <para>
        If this is not specified, the highest assigned group ID plus one,
        starting at 1, will be used as default.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term><replaceable class="parameter">username</replaceable></term>
      <listitem>
       <para>
        A list of users to include in the group. The users must already exist.
       </para>
      </listitem>
     </varlistentry>

    </variablelist>
 </refsect1>
  
 <refsect1>
  <title>Diagnostics</title>

    <variablelist>
     <varlistentry>
      <term><computeroutput>CREATE GROUP</computeroutput></term>
      <listitem>
       <para>
	Message returned if the group was successfully created.
       </para>
      </listitem>
     </varlistentry>
    </variablelist>
 </refsect1>

 <refsect1>
  <title>Examples</title>

  <para>
   Create an empty group:
<programlisting>
CREATE GROUP staff;
</programlisting>
  </para>

  <para>
   Create a group with members:
<programlisting>
CREATE GROUP marketing WITH USER jonathan, david;
</programlisting>
  </para>
 </refsect1>
 
 <refsect1>
  <title>Compatibility</title>
  
  <para>
   There is no <command>CREATE GROUP</command> statement in the SQL
   standard.  Roles are similar in concept to groups.
  </para>
 </refsect1>
</refentry>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:nil
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"../reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:"/usr/lib/sgml/catalog"
sgml-local-ecat-files:nil
End:
-->
