mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-27 08:39:28 +08:00
Fix permissions explanations in CREATE DATABASE and CREATE SCHEMA docs.
These reference pages still claimed that you have to be superuser to create a database or schema owned by a different role. That was true before 8.1, but it was changed in commitsaa1110624c
andf91370cd2f
to allow assignment of ownership to any role you are a member of. However, at the time we were thinking of that primarily as a change to the ALTER OWNER rules, so the need to touch these two CREATE ref pages got missed.
This commit is contained in:
parent
1a956481ba
commit
7e389f73d1
@ -46,14 +46,6 @@ CREATE DATABASE <replaceable class="PARAMETER">name</replaceable>
|
||||
See <xref linkend="SQL-CREATEUSER">.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Normally, the creator becomes the owner of the new database.
|
||||
Superusers can create databases owned by other users, by using the
|
||||
<literal>OWNER</> clause. They can even create databases owned by
|
||||
users with no special privileges. Non-superusers with <literal>CREATEDB</>
|
||||
privilege can only create databases owned by themselves.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
By default, the new database will be created by cloning the standard
|
||||
system database <literal>template1</>. A different template can be
|
||||
@ -84,9 +76,11 @@ CREATE DATABASE <replaceable class="PARAMETER">name</replaceable>
|
||||
<term><replaceable class="parameter">user_name</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The name of the database user who will own the new database,
|
||||
The role name of the user who will own the new database,
|
||||
or <literal>DEFAULT</literal> to use the default (namely, the
|
||||
user executing the command).
|
||||
user executing the command). To create a database owned by another
|
||||
role, you must be a direct or indirect member of that role,
|
||||
or be a superuser.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
@ -67,7 +67,8 @@ CREATE SCHEMA IF NOT EXISTS AUTHORIZATION <replaceable class="parameter">user_na
|
||||
<term><replaceable class="parameter">schema_name</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The name of a schema to be created. If this is omitted, the user name
|
||||
The name of a schema to be created. If this is omitted, the
|
||||
<replaceable class="parameter">user_name</replaceable>
|
||||
is used as the schema name. The name cannot
|
||||
begin with <literal>pg_</literal>, as such names
|
||||
are reserved for system schemas.
|
||||
@ -79,9 +80,10 @@ CREATE SCHEMA IF NOT EXISTS AUTHORIZATION <replaceable class="parameter">user_na
|
||||
<term><replaceable class="parameter">user_name</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The name of the user who will own the schema. If omitted,
|
||||
defaults to the user executing the command. Only superusers
|
||||
can create schemas owned by users other than themselves.
|
||||
The role name of the user who will own the new schema. If omitted,
|
||||
defaults to the user executing the command. To create a schema
|
||||
owned by another role, you must be a direct or indirect member of
|
||||
that role, or be a superuser.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -197,7 +199,8 @@ CREATE VIEW hollywood.winners AS
|
||||
all objects within it. <productname>PostgreSQL</productname>
|
||||
allows schemas to contain objects owned by users other than the
|
||||
schema owner. This can happen only if the schema owner grants the
|
||||
<literal>CREATE</> privilege on his schema to someone else.
|
||||
<literal>CREATE</> privilege on his schema to someone else, or a
|
||||
superuser chooses to create objects in it.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
Loading…
Reference in New Issue
Block a user