Commit f91370cd authored by Tom Lane's avatar Tom Lane

Update documentation to reflect the new ALTER OWNER rules for all

affected types of objects.
parent a9980ec3
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_aggregate.sgml,v 1.6 2005/08/01 16:11:14 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_aggregate.sgml,v 1.7 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -35,11 +35,15 @@ ALTER AGGREGATE <replaceable>name</replaceable> ( <replaceable>type</replaceable ...@@ -35,11 +35,15 @@ ALTER AGGREGATE <replaceable>name</replaceable> ( <replaceable>type</replaceable
</para> </para>
<para> <para>
You must own the aggregate function to use <command>ALTER AGGREGATE</>; You must own the aggregate function to use <command>ALTER AGGREGATE</>.
except for <command>ALTER AGGREGATE OWNER</>, which may only be executed by
a superuser.
To change the schema of an aggregate function, you must also have To change the schema of an aggregate function, you must also have
<literal>CREATE</literal> privilege on the new schema. <literal>CREATE</literal> privilege on the new schema.
To alter the owner, you must also be a direct or indirect member of the new
owning role, and that role must have <literal>CREATE</literal> privilege on
the aggregate function's schema. (These restrictions enforce that altering
the owner doesn't do anything you couldn't do by dropping and recreating
the aggregate function. However, a superuser can alter ownership of any
aggregate function anyway.)
</para> </para>
</refsect1> </refsect1>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_conversion.sgml,v 1.6 2005/03/07 04:30:51 momjian Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_conversion.sgml,v 1.7 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -32,6 +32,16 @@ ALTER CONVERSION <replaceable>name</replaceable> OWNER TO <replaceable>newowner< ...@@ -32,6 +32,16 @@ ALTER CONVERSION <replaceable>name</replaceable> OWNER TO <replaceable>newowner<
<command>ALTER CONVERSION</command> changes the definition of a <command>ALTER CONVERSION</command> changes the definition of a
conversion. conversion.
</para> </para>
<para>
You must own the conversion to use <command>ALTER CONVERSION</>.
To alter the owner, you must also be a direct or indirect member of the new
owning role, and that role must have <literal>CREATE</literal> privilege on
the conversion's schema. (These restrictions enforce that altering the
owner doesn't do anything you couldn't do by dropping and recreating the
conversion. However, a superuser can alter ownership of any conversion
anyway.)
</para>
</refsect1> </refsect1>
<refsect1> <refsect1>
...@@ -60,8 +70,7 @@ ALTER CONVERSION <replaceable>name</replaceable> OWNER TO <replaceable>newowner< ...@@ -60,8 +70,7 @@ ALTER CONVERSION <replaceable>name</replaceable> OWNER TO <replaceable>newowner<
<term><replaceable class="parameter">newowner</replaceable></term> <term><replaceable class="parameter">newowner</replaceable></term>
<listitem> <listitem>
<para> <para>
The new owner of the conversion. To change the owner of a conversion, The new owner of the conversion.
you must be a superuser.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_database.sgml,v 1.16 2005/07/31 17:19:16 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_database.sgml,v 1.17 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -71,8 +71,11 @@ ALTER DATABASE <replaceable class="PARAMETER">name</replaceable> OWNER TO <repla ...@@ -71,8 +71,11 @@ ALTER DATABASE <replaceable class="PARAMETER">name</replaceable> OWNER TO <repla
</para> </para>
<para> <para>
The fifth form changes the owner of the database. Only a superuser The fifth form changes the owner of the database.
can change the database's owner. To alter the owner, you must own the database and also be a direct or
indirect member of the new owning role, and you must have the
<literal>CREATEDB</literal> privilege.
(Note that superusers have all these privileges automatically.)
</para> </para>
</refsect1> </refsect1>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_domain.sgml,v 1.17 2005/08/01 16:11:14 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_domain.sgml,v 1.18 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -112,10 +112,14 @@ ALTER DOMAIN <replaceable class="PARAMETER">name</replaceable> ...@@ -112,10 +112,14 @@ ALTER DOMAIN <replaceable class="PARAMETER">name</replaceable>
</variablelist> </variablelist>
<para> <para>
You must own the domain to use <command>ALTER DOMAIN</>; except for You must own the domain to use <command>ALTER DOMAIN</>.
<command>ALTER DOMAIN OWNER</>, which may only be executed by a superuser. To change the schema of a domain, you must also have
To change a domain's schema, you must also have <literal>CREATE</> <literal>CREATE</literal> privilege on the new schema.
privilege on the new schema. To alter the owner, you must also be a direct or indirect member of the new
owning role, and that role must have <literal>CREATE</literal> privilege on
the domain's schema. (These restrictions enforce that altering the owner
doesn't do anything you couldn't do by dropping and recreating the domain.
However, a superuser can alter ownership of any domain anyway.)
</para> </para>
</refsect1> </refsect1>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_function.sgml,v 1.8 2005/08/01 16:11:14 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_function.sgml,v 1.9 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -46,10 +46,14 @@ where <replaceable class="PARAMETER">action</replaceable> is one of: ...@@ -46,10 +46,14 @@ where <replaceable class="PARAMETER">action</replaceable> is one of:
</para> </para>
<para> <para>
You must own the function to use <command>ALTER FUNCTION</>; except for You must own the function to use <command>ALTER FUNCTION</>.
<command>ALTER FUNCTION OWNER</>, which may only be executed by a superuser.
To change a function's schema, you must also have <literal>CREATE</> To change a function's schema, you must also have <literal>CREATE</>
privilege on the new schema. privilege on the new schema.
To alter the owner, you must also be a direct or indirect member of the new
owning role, and that role must have <literal>CREATE</literal> privilege on
the function's schema. (These restrictions enforce that altering the owner
doesn't do anything you couldn't do by dropping and recreating the function.
However, a superuser can alter ownership of any function anyway.)
</para> </para>
</refsect1> </refsect1>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_opclass.sgml,v 1.5 2004/06/25 21:55:50 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_opclass.sgml,v 1.6 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -32,6 +32,16 @@ ALTER OPERATOR CLASS <replaceable>name</replaceable> USING <replaceable class="p ...@@ -32,6 +32,16 @@ ALTER OPERATOR CLASS <replaceable>name</replaceable> USING <replaceable class="p
<command>ALTER OPERATOR CLASS</command> changes the definition of <command>ALTER OPERATOR CLASS</command> changes the definition of
an operator class. an operator class.
</para> </para>
<para>
You must own the operator class to use <command>ALTER OPERATOR CLASS</>.
To alter the owner, you must also be a direct or indirect member of the new
owning role, and that role must have <literal>CREATE</literal> privilege on
the operator class's schema. (These restrictions enforce that altering the
owner doesn't do anything you couldn't do by dropping and recreating the
operator class. However, a superuser can alter ownership of any operator
class anyway.)
</para>
</refsect1> </refsect1>
<refsect1> <refsect1>
...@@ -71,7 +81,6 @@ ALTER OPERATOR CLASS <replaceable>name</replaceable> USING <replaceable class="p ...@@ -71,7 +81,6 @@ ALTER OPERATOR CLASS <replaceable>name</replaceable> USING <replaceable class="p
<listitem> <listitem>
<para> <para>
The new owner of the operator class. The new owner of the operator class.
You must be a superuser to change the owner of an operator class.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_operator.sgml,v 1.1 2004/06/25 21:55:50 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_operator.sgml,v 1.2 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -32,6 +32,15 @@ ALTER OPERATOR <replaceable>name</replaceable> ( { <replaceable>lefttype</replac ...@@ -32,6 +32,15 @@ ALTER OPERATOR <replaceable>name</replaceable> ( { <replaceable>lefttype</replac
an operator. The only currently available functionality is to change the an operator. The only currently available functionality is to change the
owner of the operator. owner of the operator.
</para> </para>
<para>
You must own the operator to use <command>ALTER OPERATOR</>.
To alter the owner, you must also be a direct or indirect member of the new
owning role, and that role must have <literal>CREATE</literal> privilege on
the operator's schema. (These restrictions enforce that altering the owner
doesn't do anything you couldn't do by dropping and recreating the operator.
However, a superuser can alter ownership of any operator anyway.)
</para>
</refsect1> </refsect1>
<refsect1> <refsect1>
...@@ -72,7 +81,6 @@ ALTER OPERATOR <replaceable>name</replaceable> ( { <replaceable>lefttype</replac ...@@ -72,7 +81,6 @@ ALTER OPERATOR <replaceable>name</replaceable> ( { <replaceable>lefttype</replac
<listitem> <listitem>
<para> <para>
The new owner of the operator. The new owner of the operator.
You must be a superuser to change the owner of an operator.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_schema.sgml,v 1.7 2004/06/25 21:55:50 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_schema.sgml,v 1.8 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -30,9 +30,16 @@ ALTER SCHEMA <replaceable>name</replaceable> OWNER TO <replaceable>newowner</rep ...@@ -30,9 +30,16 @@ ALTER SCHEMA <replaceable>name</replaceable> OWNER TO <replaceable>newowner</rep
<para> <para>
<command>ALTER SCHEMA</command> changes the definition of a schema. <command>ALTER SCHEMA</command> changes the definition of a schema.
To rename a schema you must own the schema and have the privilege </para>
<literal>CREATE</literal> for the database. To change the owner
of a schema, you must be a superuser. <para>
You must own the schema to use <command>ALTER SCHEMA</>.
To rename a schema you must also have the
<literal>CREATE</literal> privilege for the database.
To alter the owner, you must also be a direct or
indirect member of the new owning role, and you must have the
<literal>CREATE</literal> privilege for the database.
(Note that superusers have all these privileges automatically.)
</para> </para>
</refsect1> </refsect1>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_tablespace.sgml,v 1.1 2004/06/25 21:55:50 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_tablespace.sgml,v 1.2 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -32,6 +32,13 @@ ALTER TABLESPACE <replaceable>name</replaceable> OWNER TO <replaceable>newowner< ...@@ -32,6 +32,13 @@ ALTER TABLESPACE <replaceable>name</replaceable> OWNER TO <replaceable>newowner<
<command>ALTER TABLESPACE</command> changes the definition of <command>ALTER TABLESPACE</command> changes the definition of
a tablespace. a tablespace.
</para> </para>
<para>
You must own the tablespace to use <command>ALTER TABLESPACE</>.
To alter the owner, you must also be a direct or indirect member of the new
owning role.
(Note that superusers have these privileges automatically.)
</para>
</refsect1> </refsect1>
<refsect1> <refsect1>
...@@ -63,7 +70,6 @@ ALTER TABLESPACE <replaceable>name</replaceable> OWNER TO <replaceable>newowner< ...@@ -63,7 +70,6 @@ ALTER TABLESPACE <replaceable>name</replaceable> OWNER TO <replaceable>newowner<
<listitem> <listitem>
<para> <para>
The new owner of the tablespace. The new owner of the tablespace.
You must be a superuser to change the owner of a tablespace.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_type.sgml,v 1.2 2005/08/01 16:11:14 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/alter_type.sgml,v 1.3 2005/10/13 22:44:51 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -37,6 +37,17 @@ ALTER TYPE <replaceable class="PARAMETER">name</replaceable> SET SCHEMA <replace ...@@ -37,6 +37,17 @@ ALTER TYPE <replaceable class="PARAMETER">name</replaceable> SET SCHEMA <replace
The only currently available capabilities are changing the owner and schema The only currently available capabilities are changing the owner and schema
of a type. of a type.
</para> </para>
<para>
You must own the type to use <command>ALTER TYPE</>.
To change the schema of a type, you must also have
<literal>CREATE</literal> privilege on the new schema.
To alter the owner, you must also be a direct or indirect member of the new
owning role, and that role must have <literal>CREATE</literal> privilege on
the type's schema. (These restrictions enforce that altering the owner
doesn't do anything you couldn't do by dropping and recreating the type.
However, a superuser can alter ownership of any type anyway.)
</para>
</refsect1> </refsect1>
<refsect1> <refsect1>
...@@ -59,7 +70,6 @@ ALTER TYPE <replaceable class="PARAMETER">name</replaceable> SET SCHEMA <replace ...@@ -59,7 +70,6 @@ ALTER TYPE <replaceable class="PARAMETER">name</replaceable> SET SCHEMA <replace
<listitem> <listitem>
<para> <para>
The user name of the new owner of the type. The user name of the new owner of the type.
You must be a superuser to change a type's owner.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
...@@ -68,9 +78,7 @@ ALTER TYPE <replaceable class="PARAMETER">name</replaceable> SET SCHEMA <replace ...@@ -68,9 +78,7 @@ ALTER TYPE <replaceable class="PARAMETER">name</replaceable> SET SCHEMA <replace
<term><replaceable class="PARAMETER">new_schema</replaceable></term> <term><replaceable class="PARAMETER">new_schema</replaceable></term>
<listitem> <listitem>
<para> <para>
The new schema for the type. To move a The new schema for the type.
type to a new schema, you must be the owner of the
type and have <literal>CREATE</> privilege on the new schema.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
......
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