<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title> Practical PostgreSQL</title> <meta name="keywords" content="postgresql, support, recovery, design, software, hosting, expterise, programming, postgres, pgsql, replication, mysql, firebird, database, sql, free, open source, software" /> <meta name="description" content="Command Prompt, Inc. is the largest and oldest US based commercial PostgreSQL support provider. We provide the only commercially viable integrated PostgreSQL replication solution, but also custom programming, and support. We authored the book Practical PostgreSQL, the procedural language plPHP, and adding trigger capability to plPerl. " /> <link rel="shortcut icon" href="../favicon.ico" type="image/x-icon" /> <link rel="stylesheet" type="text/css" href="../css/layout.css" /> <link rel="stylesheet" type="text/css" href="../css/cmd4.css" /> <script language="javascript" type="text/javascript"><!-- greymenuhomewideLit = new Image(); greymenuhomewideLit.src = "/images/greymenu_homewide_lit.gif"; greymenuaboutLit = new Image(); greymenuaboutLit.src = "/images/greymenu_about_lit.gif"; greymenuproductsLit = new Image(); greymenuproductsLit.src = "/images/greymenu_products_lit.gif"; greymenuservicesLit = new Image(); greymenuservicesLit.src = "/images/greymenu_services_lit.gif"; greymenusupportLit = new Image(); greymenusupportLit.src = "/images/greymenu_support_lit.gif"; greymenucommunityLit = new Image(); greymenucommunityLit.src = "/images/greymenu_community_lit.gif"; //--></script> </head> <body> <div align="center"> <div id="widecontainer"> <div id="widetop"> <div class="throwleft" style="width: 300px; text-align: left;"><a href="http://www.commandprompt.com/"><img src="../images/cmd4logo_wide.gif" border="0" alt="Command Prompt, Inc." /></a></div> <div class="throwright" style="width: 400px; text-align: right;"> <div id="topright"> <form action="index.html" name="cmdform" method="post"> <ul> <li><input type="text" name="search" value="" /></li> <li><input type="submit" name="action" value="Search Book" /></li> </ul> </form> </div> </div> </div> <ul id="greymenu_wide"> <li><a href="http://www.commandprompt.com/home/"><img onmouseover="this.src = greymenuhomewideLit.src;" onmouseout="this.src = '/images/greymenu_homewide.gif';" src="../images/greymenu_homewide.gif" border="0" height="22" title="" alt="" /></a></li><li><img src="../images/greymenu_divider.gif" border="0" width="2" height="22" alt="|" /></li><li><a href="http://www.commandprompt.com/about/"><img onmouseover="this.src = greymenuaboutLit.src;" onmouseout="this.src = '/images/greymenu_about.gif';" src="../images/greymenu_about.gif" border="0" height="22" title="" alt="" /></a></li><li><img src="../images/greymenu_divider.gif" border="0" width="2" height="22" alt="|" /></li><li><a href="http://www.commandprompt.com/products/"><img onmouseover="this.src = greymenuproductsLit.src;" onmouseout="this.src = '/images/greymenu_products.gif';" src="../images/greymenu_products.gif" border="0" height="22" title="" alt="" /></a></li><li><img src="../images/greymenu_divider.gif" border="0" width="2" height="22" alt="|" /></li><li><a href="http://www.commandprompt.com/services/"><img onmouseover="this.src = greymenuservicesLit.src;" onmouseout="this.src = '/images/greymenu_services.gif';" src="../images/greymenu_services.gif" border="0" height="22" title="" alt="" /></a></li><li><img src="../images/greymenu_divider.gif" border="0" width="2" height="22" alt="|" /></li><li><a href="http://www.commandprompt.com/support/"><img onmouseover="this.src = greymenusupportLit.src;" onmouseout="this.src = '/images/greymenu_support.gif';" src="../images/greymenu_support.gif" border="0" height="22" title="" alt="" /></a></li><li><img src="../images/greymenu_divider.gif" border="0" width="2" height="22" alt="|" /></li><li><a href="http://www.commandprompt.com/community/"><img onmouseover="this.src = greymenucommunityLit.src;" onmouseout="this.src = '/images/greymenu_community.gif';" src="../images/greymenu_community.gif" border="0" height="22" title="" alt="" /></a></li> </ul> <div style="padding-left: 16px; width: 96%;"> <HTML ><HEAD ><TITLE >CREATE GROUP</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.72 "><LINK REL="HOME" TITLE="Practical PostgreSQL" href="book1"><LINK REL="UP" TITLE="PostgreSQL Command Reference" href="c22759"><LINK REL="PREVIOUS" TITLE="CREATE FUNCTION" href="r24039"><LINK REL="NEXT" TITLE="CREATE INDEX" href="r24254"></HEAD ><BODY CLASS="REFENTRY" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >Practical PostgreSQL</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A href="r24039" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A href="r24254" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="SQL-CREATEGROUP" >CREATE GROUP</A ></H1 ><DIV CLASS="REFNAMEDIV" ><A NAME="AEN24176" ></A ><H2 >Name</H2 >CREATE GROUP -- Creates a new PostgreSQL group within the database.</DIV ><DIV CLASS="REFSYNOPSISDIV" ><A NAME="AEN24179" ></A ><H2 >Synopsis</H2 ><PRE CLASS="SYNOPSIS" >CREATE GROUP <TT CLASS="REPLACEABLE" ><I >name</I ></TT > [ WITH [ SYSID <TT CLASS="REPLACEABLE" ><I >gid</I ></TT > ] [ USER <TT CLASS="REPLACEABLE" ><I >username</I ></TT > [, ...] ] ]</PRE ><DIV CLASS="REFSECT2" ><A NAME="R2-SQL-CREATEGROUP-1" ></A ><H3 >Parameters</H3 ><P > <P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="REPLACEABLE" ><I >name</I ></TT ></DT ><DD ><P >The name of the new group to create.</P ></DD ><DT ><TT CLASS="REPLACEABLE" ><I >gid</I ></TT ></DT ><DD ><P >The group ID to use for the new group. If you do not explicitly specify the group ID, it will automatically be calculated as one higher than the highest group ID currently in use.</P ></DD ><DT ><TT CLASS="REPLACEABLE" ><I >username</I ></TT ></DT ><DD ><P >The user (or comma-delimited list of users) that you wish to automatically include in the group you are creating. The users listed in this parameter must already exist within the database.</P ></DD ></DL ></DIV > </P ></DIV ><DIV CLASS="REFSECT2" ><A NAME="R2-SQL-CREATEGROUP-2" ></A ><H3 >Results </H3 ><P > <P ></P ><DIV CLASS="VARIABLELIST" ><DL ><DT ><TT CLASS="LITERAL" >CREATE GROUP</TT ></DT ><DD ><P >The message returned when a PostgreSQL group is created successfully. </P ></DD ><DT ><TT CLASS="LITERAL" >ERROR: CREATE GROUP: group name "</TT ><TT CLASS="REPLACEABLE" ><I >name</I ></TT ><TT CLASS="LITERAL" >" already exists</TT ></DT ><DD ><P >The error returned if a PostgreSQL group named <TT CLASS="REPLACEABLE" ><I >name</I ></TT > currently exists in the system.</P ></DD ><DT ><TT CLASS="LITERAL" >ERROR: CREATE GROUP: permission denied </TT ></DT ><DD ><P >The error returned if a non-superuser attempts to create a group.</P ></DD ><DT ><TT CLASS="LITERAL" >ERROR: CREATE GROUP: user "</TT ><TT CLASS="REPLACEABLE" ><I >username</I ></TT ><TT CLASS="LITERAL" >" does not exist</TT ></DT ><DD ><P >The error returned if the <TT CLASS="REPLACEABLE" ><I >username</I ></TT > in the <TT CLASS="LITERAL" >WITH USER</TT > clause does not currently exist.</P ></DD ></DL ></DIV > </P ></DIV ></DIV ><DIV CLASS="REFSECT1" ><A NAME="R1-SQL-CREATEGROUP-1" ></A ><H2 >Description</H2 ><P >A database superuser can use <TT CLASS="LITERAL" >CREATE GROUP</TT > to create a new group in PostgreSQL. A group is a system-wide database object that can be assigned privileges (with the <TT CLASS="LITERAL" >GRANT</TT > command), and have users added to it as members. Members of a group are assigned its privileges by proxy.</P ><P >To modify a group (and the list of users that it is composed of it), use the <TT CLASS="LITERAL" >ALTER GROUP</TT > command. If you wish to remove a group entirely, use the <TT CLASS="LITERAL" >DROP GROUP</TT > command.</P ></DIV ><DIV CLASS="REFSECT1" ><A NAME="R1-SQL-CREATEGROUP-2" ></A ><H2 >Examples</H2 ><P >The following example creates an empty group named <TT CLASS="LITERAL" >management</TT >:</P ><PRE CLASS="SCREEN" >booktown=# <TT CLASS="USERINPUT" ><B >CREATE GROUP management;</B ></TT > CREATE GROUP</PRE ><P >The next example creates a group called <TT CLASS="LITERAL" >accounting</TT >, and <SPAN ><I CLASS="EMPHASIS" >automatically</I ></SPAN > adds users to it two users by specifying their usernames following the <TT CLASS="LITERAL" >WITH USER</TT > clause:</P ><PRE CLASS="SCREEN" >booktown=# <TT CLASS="USERINPUT" ><B >CREATE GROUP accounting WITH USER vincent, allen;</B ></TT > CREATE GROUP</PRE ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A href="r24039" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A href="book1" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A href="r24254" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >CREATE FUNCTION</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A href="c22759" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >CREATE INDEX</TD ></TR ></TABLE ></DIV ></BODY ></HTML > </div> <br /> <div id="thefineprint"> <a href="http://www.commandprompt.com/products/mammothpostgresql/"><img src="../images/powered_by_mammoth.gif" alt="Powered by Mammoth PostgreSQL" title="Powered by Mammoth PostgreSQL" border="0" /></a> <br /> Copyright © 2000-2007 Command Prompt, Inc. All Rights Reserved. All trademarks property of their respective owners. </div> </div> </div> </body> </html>