aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Eisentraut <peter@eisentraut.org>2024-01-31 11:53:56 +0100
committerPeter Eisentraut <peter@eisentraut.org>2024-01-31 12:05:41 +0100
commitd0283387d358e5e0a64a439b7fe906399b59fdd9 (patch)
treebfcfc77e6a477d961e4a194034187615832d31f0
parent21d9c3ee4ef74e2229341d39811c97f85071c90a (diff)
downloadpostgresql-d0283387d358e5e0a64a439b7fe906399b59fdd9.tar.gz
postgresql-d0283387d358e5e0a64a439b7fe906399b59fdd9.zip
doc: Document more that relations share a namespace
This was already documented in the CREATE INDEX reference, but not in the introductory "Data Definition" chapter. Also, document that the index that implements a constraint has the same name as the constraint. Author: Laurenz Albe <laurenz.albe@cybertec.at> Reviewed-by: jian he <jian.universality@gmail.com> Reviewed-by: David G. Johnston <david.g.johnston@gmail.com> Discussion: https://www.postgresql.org/message-id/flat/CACJufxFG682tYcP9aH_F-jrqq5End8MHZR77zcp1%3DDUrEsSu1Q%40mail.gmail.com
-rw-r--r--doc/src/sgml/ddl.sgml6
-rw-r--r--doc/src/sgml/ref/create_table.sgml8
2 files changed, 10 insertions, 4 deletions
diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml
index 0a0ff42e881..9d7e2c756be 100644
--- a/doc/src/sgml/ddl.sgml
+++ b/doc/src/sgml/ddl.sgml
@@ -3003,7 +3003,11 @@ SELECT * FROM information WHERE group_id = 2 FOR UPDATE;
<para>
A database contains one or more named <firstterm>schemas</firstterm>, which
in turn contain tables. Schemas also contain other kinds of named
- objects, including data types, functions, and operators. The same
+ objects, including data types, functions, and operators. Within one
+ schema, two objects of the same type cannot have the same name.
+ Furthermore, tables, sequences, indexes, views, materialized views, and
+ foreign tables share the same namespace, so that, for example, an index and
+ a table must have different names if they are in the same schema. The same
object name can be used in different schemas without conflict; for
example, both <literal>schema1</literal> and <literal>myschema</literal> can
contain tables named <literal>mytable</literal>. Unlike databases,
diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml
index d563f02b00f..4cbaaccaf7c 100644
--- a/doc/src/sgml/ref/create_table.sgml
+++ b/doc/src/sgml/ref/create_table.sgml
@@ -1027,7 +1027,8 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
Adding a unique constraint will automatically create a unique B-tree
index on the column or group of columns used in the constraint. But if
the constraint includes a <literal>WITHOUT OVERLAPS</literal> clause, it
- will use a GiST index.
+ will use a GiST index. The created index has the same name as the unique
+ constraint.
</para>
<para>
@@ -1082,6 +1083,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
<literal>PRIMARY KEY</literal> constraint will automatically create a
unique B-tree index, or GiST if <literal>WITHOUT OVERLAPS</literal> was
specified, on the column or group of columns used in the constraint.
+ That index has the same name as the primary key constraint.
</para>
<para>
@@ -1118,8 +1120,8 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
<para>
Exclusion constraints are implemented using
- an index, so each specified operator must be associated with an
- appropriate operator class
+ an index that has the same name as the constraint, so each specified
+ operator must be associated with an appropriate operator class
(see <xref linkend="indexes-opclass"/>) for the index access
method <replaceable>index_method</replaceable>.
The operators are required to be commutative.