A database contains one or more named schemas, 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 schema1 and myschema can
contain tables named mytable. Unlike databases,
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 WITHOUT OVERLAPS clause, it
- will use a GiST index.
+ will use a GiST index. The created index has the same name as the unique
+ constraint.
PRIMARY KEY constraint will automatically create a
unique B-tree index, or GiST if WITHOUT OVERLAPS was
specified, on the column or group of columns used in the constraint.
+ That index has the same name as the primary key constraint.
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 ) for the index access
method index_method.
The operators are required to be commutative.