Commit 36addaff authored by Peter Eisentraut's avatar Peter Eisentraut

Some cleanups in CREATE/ALTER/DROP USER ref pages.

parent af1b72d8
<!-- <!--
$Header: /cvsroot/pgsql/doc/src/sgml/ref/alter_user.sgml,v 1.18 2001/12/08 03:24:33 thomas Exp $ $Header: /cvsroot/pgsql/doc/src/sgml/ref/alter_user.sgml,v 1.19 2002/02/27 21:14:53 petere Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
<refentry id="SQL-ALTERUSER"> <refentry id="SQL-ALTERUSER">
<refmeta> <refmeta>
<refentrytitle id="sql-alteruser-title"> <refentrytitle id="sql-alteruser-title">ALTER USER</refentrytitle>
ALTER USER
</refentrytitle>
<refmiscinfo>SQL - Language Statements</refmiscinfo> <refmiscinfo>SQL - Language Statements</refmiscinfo>
</refmeta> </refmeta>
<refnamediv> <refnamediv>
<refname> <refname>ALTER USER</refname>
ALTER USER <refpurpose>change a database user account</refpurpose>
</refname>
<refpurpose>
change a database user account
</refpurpose>
</refnamediv> </refnamediv>
<refsynopsisdiv> <refsynopsisdiv>
<refsynopsisdivinfo> <synopsis>
<date>2001-07-10</date>
</refsynopsisdivinfo>
<synopsis>
ALTER USER <replaceable class="PARAMETER">username</replaceable> [ [ WITH ] <replaceable class="PARAMETER">option</replaceable> [ ... ] ] ALTER USER <replaceable class="PARAMETER">username</replaceable> [ [ WITH ] <replaceable class="PARAMETER">option</replaceable> [ ... ] ]
where <replaceable class="PARAMETER">option</replaceable> can be: where <replaceable class="PARAMETER">option</replaceable> can be:
[ ENCRYPTED | UNENCRYPTED ] PASSWORD '<replaceable class="PARAMETER">password</replaceable>' [ ENCRYPTED | UNENCRYPTED ] PASSWORD '<replaceable class="PARAMETER">password</replaceable>'
| CREATEDB | NOCREATEDB | CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER | CREATEUSER | NOCREATEUSER
| VALID UNTIL '<replaceable class="PARAMETER">abstime</replaceable>' | VALID UNTIL '<replaceable class="PARAMETER">abstime</replaceable>'
</synopsis> </synopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<refsect2 id="R2-SQL-ALTERUSER-1"> <para>
<refsect2info> <command>ALTER USER</command> is used to change the attributes of a
<date>1998-09-08</date> <productname>PostgreSQL</productname> user account. Attributes not
</refsect2info> mentioned in the command retain their previous settings.
<title> </para>
Inputs
</title> <para>
Only a database superuser can change privileges and password
expiration with this command. Ordinary users can only change their
own password.
</para>
<refsect2>
<title>Parameters</title>
<para> <para>
<variablelist> <variablelist>
...@@ -47,7 +51,7 @@ where <replaceable class="PARAMETER">option</replaceable> can be: ...@@ -47,7 +51,7 @@ where <replaceable class="PARAMETER">option</replaceable> can be:
<term><replaceable class="PARAMETER">username</replaceable></term> <term><replaceable class="PARAMETER">username</replaceable></term>
<listitem> <listitem>
<para> <para>
The name of the user whose details are to be altered. The name of the user whose attributes are to be altered.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
...@@ -62,12 +66,12 @@ where <replaceable class="PARAMETER">option</replaceable> can be: ...@@ -62,12 +66,12 @@ where <replaceable class="PARAMETER">option</replaceable> can be:
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>ENCRYPTED</term> <term><literal>ENCRYPTED</literal></term>
<term>UNENCRYPTED</term> <term><literal>UNENCRYPTED</literal></term>
<listitem> <listitem>
<para> <para>
These keywords control whether the These key words control whether the password is stored
password is stored encrypted in <literal>pg_shadow</>. (See encrypted in <literal>pg_shadow</>. (See
<xref linkend="SQL-CREATEUSER" endterm="SQL-CREATEUSER-title"> <xref linkend="SQL-CREATEUSER" endterm="SQL-CREATEUSER-title">
for more information about this choice.) for more information about this choice.)
</para> </para>
...@@ -75,26 +79,27 @@ where <replaceable class="PARAMETER">option</replaceable> can be: ...@@ -75,26 +79,27 @@ where <replaceable class="PARAMETER">option</replaceable> can be:
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>CREATEDB</term> <term><literal>CREATEDB</literal></term>
<term>NOCREATEDB</term> <term><literal>NOCREATEDB</literal></term>
<listitem> <listitem>
<para> <para>
These clauses define a user's ability to create databases. These clauses define a user's ability to create databases. If
If CREATEDB is specified, the user being defined will <literal>CREATEDB</literal> is specified, the user being
be allowed to create his own databases. Using NOCREATEDB defined will be allowed to create his own databases. Using
will deny a user the ability to create databases. <literal>NOCREATEDB</literal> will deny a user the ability to
create databases.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>CREATEUSER</term> <term><literal>CREATEUSER</literal></term>
<term>NOCREATEUSER</term> <term><literal>NOCREATEUSER</literal></term>
<listitem> <listitem>
<para> <para>
These clauses determine whether a user will be permitted to These clauses determine whether a user will be permitted to
create new users himself. This option will also make the user create new users himself. This option will also make the user
a superuser who can override all access restrictions. a superuser who can override all access restrictions.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
...@@ -111,122 +116,105 @@ where <replaceable class="PARAMETER">option</replaceable> can be: ...@@ -111,122 +116,105 @@ where <replaceable class="PARAMETER">option</replaceable> can be:
</variablelist> </variablelist>
</para> </para>
</refsect2> </refsect2>
</refsect1>
<refsect2 id="R2-SQL-ALTERUSER-2">
<refsect2info> <refsect1>
<date>1998-09-08</date> <title>Diagnostics</title>
</refsect2info>
<title>
Outputs
</title>
<para>
<variablelist>
<varlistentry>
<term><computeroutput>ALTER USER</computeroutput></term>
<listitem>
<para>
Message returned if the alteration was successful.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><computeroutput>
ERROR: ALTER USER: user "username" does not exist
</computeroutput></term>
<listitem>
<para>
Error message returned if the specified user is not known to
the database.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect2>
</refsynopsisdiv>
<refsect1 id="R1-SQL-ALTERUSER-1">
<refsect1info>
<date>1998-09-08</date>
</refsect1info>
<title>
Description
</title>
<para> <para>
<command>ALTER USER</command> is used to change the attributes of a user's <variablelist>
<productname>PostgreSQL</productname> account. Attributes not mentioned <varlistentry>
in the command retain their previous settings. <term><computeroutput>ALTER USER</computeroutput></term>
<listitem>
<para>
Message returned if the alteration was successful.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><computeroutput>ERROR: ALTER USER: user "username" does not exist</computeroutput></term>
<listitem>
<para>
Error message returned if the specified user is not known to
the database.
</para>
</listitem>
</varlistentry>
</variablelist>
</para> </para>
</refsect1>
<refsect1>
<title>Notes</title>
<para> <para>
Only a database superuser Use <xref linkend="SQL-CREATEUSER" endterm="SQL-CREATEUSER-title">
can change privileges and password expiration with this command. Ordinary to add new users, and <xref linkend="SQL-DROPUSER"
users can only change their own password. endterm="SQL-DROPUSER-title"> to remoe a user.
</para> </para>
<para> <para>
<command>ALTER USER</command> cannot change a user's group memberships. <command>ALTER USER</command> cannot change a user's group memberships.
Use <xref linkend="SQL-ALTERGROUP" endterm="SQL-ALTERGROUP-title"> Use <xref linkend="SQL-ALTERGROUP" endterm="SQL-ALTERGROUP-title">
to do that. to do that.
</para> </para>
<para>
Use <xref linkend="SQL-CREATEUSER" endterm="SQL-CREATEUSER-title">
to create a new user and <xref linkend="SQL-DROPUSER"
endterm="SQL-DROPUSER-title"> to remove a user.
</para>
</refsect1> </refsect1>
<refsect1 id="R1-SQL-ALTERUSER-2"> <refsect1>
<title> <title>Examples</title>
Usage
</title>
<para> <para>
Change a user password: Change a user password:
<programlisting> <programlisting>
ALTER USER davide WITH PASSWORD 'hu8jmn3'; ALTER USER davide WITH PASSWORD 'hu8jmn3';
</programlisting> </programlisting>
</para>
<para>
Change a user's valid until date: Change a user's valid until date:
<programlisting> <programlisting>
ALTER USER manuel VALID UNTIL 'Jan 31 2030'; ALTER USER manuel VALID UNTIL 'Jan 31 2030';
</programlisting> </programlisting>
</para>
<para>
Change a user's valid until date, specifying that his Change a user's valid until date, specifying that his
authorization should expire at midday on 4th May 1998 using authorization should expire at midday on 4th May 1998 using
the time zone which is one hour ahead of UTC: the time zone which is one hour ahead of UTC:
<programlisting> <programlisting>
ALTER USER chris VALID UNTIL 'May 4 12:00:00 1998 +1'; ALTER USER chris VALID UNTIL 'May 4 12:00:00 1998 +1';
</programlisting> </programlisting>
</para>
<para>
Give a user the ability to create other users and new databases: Give a user the ability to create other users and new databases:
<programlisting> <programlisting>
ALTER USER miriam CREATEUSER CREATEDB; ALTER USER miriam CREATEUSER CREATEDB;
</programlisting> </programlisting>
</para> </para>
</refsect1> </refsect1>
<refsect1 id="R1-SQL-ALTERUSER-3"> <refsect1>
<title> <title>Compatibility</title>
Compatibility
</title>
<refsect2 id="R2-SQL-ALTERUSER-4"> <para>
<refsect2info> The <command>ALTER USER</command> statement is a
<date>1998-09-08</date> <productname>PostgreSQL</productname> extension. The SQL standard
</refsect2info> leaves the definition of users to the implementation.
<title> </para>
SQL92 </refsect1>
</title>
<para> <refsect1>
There is no <command>ALTER USER</command> statement in <title>See Also</title>
<acronym>SQL92</acronym>.
The standard leaves <simplelist type="inline">
the definition of users to the implementation. <member><xref linkend="sql-createuser" endterm="sql-createuser-title"></member>
</para> <member><xref linkend="sql-dropuser" endterm="sql-dropuser-title"></member>
</refsect2> </simplelist>
</refsect1> </refsect1>
</refentry> </refentry>
......
This diff is collapsed.
<!-- <!--
$Header: /cvsroot/pgsql/doc/src/sgml/ref/drop_user.sgml,v 1.14 2002/01/20 22:19:56 petere Exp $ $Header: /cvsroot/pgsql/doc/src/sgml/ref/drop_user.sgml,v 1.15 2002/02/27 21:14:54 petere Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
<refentry id="SQL-DROPUSER"> <refentry id="SQL-DROPUSER">
<refmeta> <refmeta>
<refentrytitle id="SQL-DROPUSER-TITLE"> <refentrytitle id="SQL-DROPUSER-TITLE">DROP USER</refentrytitle>
DROP USER
</refentrytitle>
<refmiscinfo>SQL - Language Statements</refmiscinfo> <refmiscinfo>SQL - Language Statements</refmiscinfo>
</refmeta> </refmeta>
<refnamediv> <refnamediv>
<refname> <refname>DROP USER</refname>
DROP USER <refpurpose>remove a database user account</refpurpose>
</refname>
<refpurpose>
remove a database user account
</refpurpose>
</refnamediv> </refnamediv>
<refsynopsisdiv> <refsynopsisdiv>
<refsynopsisdivinfo> <synopsis>
<date>1999-07-20</date>
</refsynopsisdivinfo>
<synopsis>
DROP USER <replaceable class="PARAMETER">name</replaceable> DROP USER <replaceable class="PARAMETER">name</replaceable>
</synopsis> </synopsis>
</refsynopsisdiv>
<refsect2 id="R2-SQL-DROPUSER-1">
<refsect2info>
<date>1998-09-22</date>
</refsect2info>
<title>
Inputs
</title>
<para>
<refsect1>
<title>Description</title>
<para>
<command>DROP USER</command> removes the specified user from the database.
It does not remove tables, views, or other objects owned by the user. If the
user owns any database, an error is raised.
</para>
<refsect2>
<title>Parameters</title>
<para>
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term><replaceable class="PARAMETER">name</replaceable></term> <term><replaceable class="PARAMETER">name</replaceable></term>
...@@ -47,80 +44,62 @@ DROP USER <replaceable class="PARAMETER">name</replaceable> ...@@ -47,80 +44,62 @@ DROP USER <replaceable class="PARAMETER">name</replaceable>
</variablelist> </variablelist>
</para> </para>
</refsect2> </refsect2>
<refsect2 id="R2-SQL-DROPUSER-2">
<refsect2info>
<date>1998-09-22</date>
</refsect2info>
<title>
Outputs
</title>
<para>
<variablelist>
<varlistentry>
<term><computeroutput>DROP USER</computeroutput></term>
<listitem>
<para>
The message returned if the user is successfully deleted.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><computeroutput>
ERROR: DROP USER: user "<replaceable class="parameter">name</replaceable>" does not exist
</computeroutput></term>
<listitem>
<para>
This message occurs if the user name is not found.
</para>
</listitem>
</varlistentry>
<varlistentry> </refsect1>
<term><computeroutput>
DROP USER: user "<replaceable class="parameter">name</replaceable>" owns database "<replaceable class="parameter">name</replaceable>", cannot be removed
</computeroutput></term>
<listitem>
<para>
You must drop the database first or change its ownership.
</para>
</listitem>
</varlistentry>
</variablelist> <refsect1>
</para> <title>Diagnostics</title>
</refsect2>
</refsynopsisdiv>
<refsect1 id="R1-SQL-DROPUSER-1">
<refsect1info>
<date>1998-09-22</date>
</refsect1info>
<title>
Description
</title>
<para> <para>
<command>DROP USER</command> removes the specified user from the database. <variablelist>
It does not remove tables, views, or other objects owned by the user. If the <varlistentry>
user owns any database you get an error. <term><computeroutput>DROP USER</computeroutput></term>
<listitem>
<para>
The message returned if the user is successfully deleted.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><computeroutput>ERROR: DROP USER: user "<replaceable class="parameter">name</replaceable>" does not exist</computeroutput></term>
<listitem>
<para>
This message occurs if the user name is not found.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><computeroutput>DROP USER: user "<replaceable class="parameter">name</replaceable>" owns database "<replaceable class="parameter">name</replaceable>", cannot be removed</computeroutput></term>
<listitem>
<para>
You must drop the database first or change its ownership.
</para>
</listitem>
</varlistentry>
</variablelist>
</para> </para>
</refsect1>
<refsect1>
<title>Notes</title>
<para> <para>
Use <xref linkend="SQL-CREATEUSER" endterm="SQL-CREATEUSER-title"> Use <xref linkend="SQL-CREATEUSER" endterm="SQL-CREATEUSER-title">
to add new users, and <xref linkend="SQL-ALTERUSER" to add new users, and <xref linkend="SQL-ALTERUSER"
endterm="SQL-ALTERUSER-title"> to change a user's properties. endterm="SQL-ALTERUSER-title"> to change a user's attributes.
<productname>PostgreSQL</productname> <productname>PostgreSQL</productname> includes a program <xref
comes with a script <xref linkend="APP-DROPUSER" linkend="APP-DROPUSER" endterm="APP-DROPUSER-title"> that has the
endterm="APP-DROPUSER-title"> same functionality as this command (in fact, it calls this command)
which has the same functionality as this command (in fact, it calls this command)
but can be run from the command shell. but can be run from the command shell.
</para> </para>
</refsect1> </refsect1>
<refsect1 id="R1-SQL-DROPUSER-2"> <refsect1>
<title> <title>Examples</title>
Usage
</title>
<para> <para>
To drop a user account: To drop a user account:
<programlisting> <programlisting>
...@@ -129,23 +108,26 @@ DROP USER jonathan; ...@@ -129,23 +108,26 @@ DROP USER jonathan;
</para> </para>
</refsect1> </refsect1>
<refsect1 id="R1-SQL-DROPUSER-3"> <refsect1>
<title> <title>Compatibility</title>
Compatibility
</title>
<refsect2 id="R2-SQL-DROPUSER-4"> <para>
<refsect2info> The <command>DROP USER</command> statement is a
<date>1998-09-22</date> <productname>PostgreSQL</productname> extension. The SQL standard
</refsect2info> leaves the definition of users to the implementation.
<title> </para>
SQL92
</title>
<para>
There is no <command>DROP USER</command> in <acronym>SQL92</acronym>.
</para>
</refsect2>
</refsect1> </refsect1>
<refsect1>
<title>See Also</title>
<simplelist type="inline">
<member><xref linkend="sql-createuser" endterm="sql-createuser-title"></member>
<member><xref linkend="sql-alteruser" endterm="sql-alteruser-title"></member>
<member><xref linkend="app-dropuser"></member>
</simplelist>
</refsect1>
</refentry> </refentry>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment